摘要: 首先我们要时光倒流, 倒着做, 变成加边操作维护关键边. 先随意搞出一颗树, 树上每条边都是关键边(因为是树, 去掉就不连通了)....然后加边(u, v)时, 路径(u, v)上的所有边都变成非关键边了, 因为形成了环, 环上任意2点有2条路径。。。下图, 加上蓝色的边, 红色x的边就变成了非关键 阅读全文
posted @ 2016-02-01 22:08 JSZX11556 阅读(300) 评论(0) 推荐(0) 编辑
摘要: dp(i, s)表示考虑了前i个数后, 能取到的数的集合为s时的方案数.对于1~min(L, K)枚举更新, 剩下的直接乘就好了. 复杂度O(T*K*2^N)。。。好像有点大, 但是可以AC。。。。--------------------------------------------------- 阅读全文
posted @ 2016-02-01 17:46 JSZX11556 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 树背包, 左儿子右兄弟来表示树, dp(x, y, z)表示结点x, x的子树及x的部分兄弟共建y个伐木场, 离x最近的伐木场是z时的最小代价. 时间复杂度O(N^2*K^2)-------------------------------------------------------------- 阅读全文
posted @ 2016-02-01 14:53 JSZX11556 阅读(651) 评论(0) 推荐(0) 编辑