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

浙公网安备 33010602011771号