摘要: 第一问直接使用二分 \(+\) 贪心即可。 对于第二问,我们可以考虑一个 \(dp\),令 \(dp_{i, j, k}\) 表示当前选到第 \(i\) 根木棍,已经分成了 \(j\) 段的方案数,当前这一段的长度和为 \(k\) 的方案,那么就有转移就十分显然了。 到这里我们发现这个 \(dp\) 阅读全文
posted @ 2020-08-11 23:00 Achtoria 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 可以发现题目给的是一颗有向树的形式,不论是有向树还是无向树,我们考虑 \(dp\) 转移基本是从子树转移到当前的父亲,状态也一般涉及的是在子树内部的状态,本题也不例外。 我们钦定 $1$ 为有向树的根,首先可以发现限制每个点位置的那些点一定是这个点在有向树上的儿子或者是父亲,并且只要确定限制它点的位 阅读全文
posted @ 2020-08-11 22:48 Achtoria 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 实际上是要问有多少对 \(i, j(j \le i)\) 满足 \(\dbinom{i}{j} \equiv 0 \pmod{P}\),大组合数取模问题可以考虑卢卡斯定理这个有利的武器。之前一直不会证明卢卡斯定理,今天学会了证法简单记录一下。 一个引理:\((x + 1) ^ P \equiv x 阅读全文
posted @ 2020-08-11 22:28 Achtoria 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 只有询问,允许离线,我们可以考虑使用莫队。 那么问题在于我们怎么计算右端点 \(+1\) 带来的增量,可以发现这些新增加的子区间都是以 \(r\) 为右端点的,那么我们只需要考虑以 \(r\) 为右端点,左端点在 \([l, r]\) 的区间最小值之和,可以发现这个的答案是可以转移的,于是我们令 \ 阅读全文
posted @ 2020-08-11 21:34 Achtoria 阅读(108) 评论(0) 推荐(0) 编辑