摘要: 拓扑排序如果是随便输出的话,那么只需要用一个队列就可以维护了。复杂度O(n)如果是要求字典序最小输入的话,使用小堆维护,正常建边即可。复杂度O(nlog(n))如果要求尽量使最小值在前输出的话(例如312 优先级高于 231)那么可以反向建边,然后在使用大堆维护,最后把顺序reverse()下。复杂... 阅读全文
posted @ 2014-10-20 12:06 danceonly、 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 有时候在计算组合数的时候会经常用n!的逆元,如果n= 0; i--) Inv[i] = Inv[i+1] * (i + 1) % MOD;然后在使用的时候是直接return Fac[N]*Inv[M]%MOD*Inv[N-M]%MOD;//计算C(N, M),注意不要溢出如果MOD比N要小的话要注意... 阅读全文
posted @ 2014-10-20 11:53 danceonly、 阅读(1042) 评论(0) 推荐(0) 编辑