题目 这可算是一道非常好的关于容斥原理的题了. 算法 好吧,这题我毫无思路,直接给正解. 首先,问题的正面不容易求,那么就求反面吧: 有多少种添加边的方案,使得这个图是DAG图(这里及以下所说的DAG图都是指这个图不是整个强连通的). 利用容斥原理,DAG图的特征是有至少一个入度为\(0\)的点并且这个图不止一个点(这里及以下所说的点都是指求强连通后的点),就根据这个进行容斥. 设\(g(set)\)为集合里的点都是入度为\(0\)的方案数,注意,这个有点特别,比如这个: 它的值应该为\(0\)…