随笔分类 -  动态规划-背包dp

摘要:题目链接 "BZOJ5314" 题解 设$f[i][j][0|1][0|1]$表示$i$为根的子树,用了$j$个监测器,$i$节点是否被控制,$i$节点是否放置的方案数 然后转移即可 $O(nk^2)$?? 用上子树大小来优化就是$O(nk)$的 对于子树大小都超过$k$的子树,转移$O(k^2)$ 阅读全文
posted @ 2018-06-17 08:47 Mychael 阅读(164) 评论(0) 推荐(0)
摘要:题目链接 "BZOJ1025" 题解 题意就是问一个$1....n$的排列在同一个置换不断重复下回到$1...n$可能需要的次数的个数 和置换群也没太大关系 我们只需知道同一个置换不断重复,实际上就是每个循环节的元素不断在循环节上旋转,所需次数就是所有循环节长度的$lcm$ 这一点很显然 而循环节数 阅读全文
posted @ 2018-05-11 20:50 Mychael 阅读(157) 评论(0) 推荐(0)
摘要:题目链接 "BZOJ1004" 题解 burnside定理 在$m$个置换下本质不同的染色方案数,等于每种置换下不变的方案数的平均数 记$L$为本质不同的染色方案数,$m$为置换数,$f(i)$为置换$i$下不变的方案数,那么 $$L = \frac{1}{m}\sum\limits_{i = 1} 阅读全文
posted @ 2018-05-11 20:02 Mychael 阅读(191) 评论(0) 推荐(0)
摘要:题目链接 "POJ" 题解 背包树形dp板题 就是读入有点无聊,浪费了很多青春 C++ include include include include include include include define LL long long int define REP(i,n) for (int i 阅读全文
posted @ 2018-05-10 16:48 Mychael 阅读(296) 评论(0) 推荐(0)
摘要:题目链接 "BZOJ1017" 题解 orz "hzwer" 树形dp神题 设$f[i][j][k]$表示$i$号物品恰好花费$k$金币,并将$j$个物品贡献给父亲的合成时的最大收益 计算$f[i][j][k]$时,我们先枚举合成了x个$i$号物品,计算出此时的花费各种金币下最大收益 然后就可以枚举 阅读全文
posted @ 2018-05-09 14:40 Mychael 阅读(182) 评论(0) 推荐(0)
摘要:题目 输入格式 第一行,两个正整数 S 和 q,q 表示询问数量。 接下来 q 行,每行一个正整数 n。 输出格式 输出共 q 行,分别为每个询问的答案。 输入样例 30 3 9 29 1000000000000000000 输出样例 0 9 450000036 提示 对于100%的数据,2 inc 阅读全文
posted @ 2018-05-01 14:34 Mychael 阅读(330) 评论(0) 推荐(2)