摘要: 思路就是求边双连通分量,然后缩点,再用树形DP搞一下。代码和求强连通很类似,有点神奇,=_=,慢慢消化吧 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 c... 阅读全文
posted @ 2015-08-11 17:02 AOQNRMGYXLMV 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 给出一棵树,有若干次询问,每次询问距两个点u, v距离相等的点的个数。情况还挺多的,少侠不妨去看官方题解。^_^ 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 ... 阅读全文
posted @ 2015-08-11 13:13 AOQNRMGYXLMV 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 首先统计一下前m行中,有x列1的个数为0,有y列1的个数为1.设d(i, j)表示有i列1的个数为0,有j列1的个数为1,能到达这个状态的矩阵的个数。则d(x, y) = 1每一行都是两个1一起放,枚举这两个1分别放在了哪种列上面于是有状态转移:d(i - 2, j + 2) += d(i, j) ... 阅读全文
posted @ 2015-08-11 10:35 AOQNRMGYXLMV 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 赶脚官方题解写得挺清楚的说,=_=注意数据范围用long long,否则会溢出。 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 const int maxn = 1000... 阅读全文
posted @ 2015-08-11 09:23 AOQNRMGYXLMV 阅读(282) 评论(0) 推荐(0) 编辑