随笔分类 -  dp-----状压dp

摘要:一、题目 点此看题 二、解法 套路:当只有两个关键状态量时,我们以一个量为主,一个量为辅思考问题。 那么我们以 \(a\) 边为主,因为不可能表示出原图的最小生成树所以我们开始找结论。根据 \(\tt kruskall\) 算法我们先把所有 \(a\) 边连起来,那么会形成若干个 \(a\) 边连通 阅读全文
posted @ 2021-07-28 20:51 C202044zxy 阅读(145) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 考试时把题目看错了,没有注意到 \(a_i\) 不降的条件。 考虑要求的东西是可能的排名情况,也就是求合法排列个数,状压可以将 \(O(n!)\) 的排列枚举优化成 \(O(2^n)\),那么这道题肯定会用上它。 如果我们不考虑 \(a_i\) 不降的限制,发现这个题根 阅读全文
posted @ 2021-07-19 20:44 C202044zxy 阅读(92) 评论(0) 推荐(0)
摘要:操作 题目描述 点此看题 解法 分裂有点难,但是发现分裂第一堆石子就相当于合并第二堆石子,问题就转化为两堆石子都能合并,最后达到相同的状态。 全部合并成一堆石子答案是 \(n+m-2\),考虑第一堆石子的某个子集和跟第二个子集的某个子集和相等,答案就能减少 \(2\),那么设计 \(dp[s]\) 阅读全文
posted @ 2021-07-19 17:10 C202044zxy 阅读(186) 评论(0) 推荐(0)
摘要:D. Excellent Arrays 题目描述 点此看题 对于一个长度为 \(n\) 的数组 \(a\),定义 \(F(a)\) 为满足 \(1\leq i<j\leq n\) 且 \(a_i+a_j=i+j\) 的二元组个数。 求有多少满足下列条件的数列 \(a\): 对于所有 \(a_i\), 阅读全文
posted @ 2021-07-16 22:37 C202044zxy 阅读(80) 评论(0) 推荐(0)
摘要:C.Errich-Tac-Toe 题目描述 点此看题 解法 先考虑 \(\tt easy\space version\),针对 \(\lfloor\frac{k}{3}\rfloor\) 来构造,可以把整张图三染色,一定有一种颜色满足格子 X 的数量不超过 \(\lfloor\frac{k}{3}\ 阅读全文
posted @ 2021-07-12 15:11 C202044zxy 阅读(223) 评论(0) 推荐(0)
摘要:一、题目 点此看题 \(\tt zxy\) 有 \(n\) 个宝箱,第 \(i\) 个宝箱有 \(a_i\) 个硬币,商店出售 \(m\) 个钥匙,第 \(i\) 个钥匙需要 \(b_i\) 个硬币。 \(\tt ppl\) 想要趁 \(\tt zxy\) 不在的时候打开他的宝箱拿走硬币,他的收益定 阅读全文
posted @ 2021-05-03 22:33 C202044zxy 阅读(94) 评论(0) 推荐(0)
摘要:集合幂级数 这个东西是我翻集训队论文看的,由于我太弱只能感性理解了。 类似于生成函数,设 $U={1,2...n}$,那么集合幂级数定义为: $$f=\sum_{S\subseteq U} f_Sx^S$$ 集合幂级数的记号 $x$ 是有意义的,对于一个 $n$ 维向量 $x$ 和一个集合 $S\i 阅读全文
posted @ 2021-03-25 22:22 C202044zxy 阅读(414) 评论(0) 推荐(0)