容斥
容斥
_Shmily
这个作者很懒,什么都没留下…
展开
-
HDU-5514、Frogs (容斥)
题目链接 题面: 题意: 有一个长度为 mmm 的环,编号为 [0,m−1][0,m-1][0,m−1],有 nnn 只青蛙在 000 号点处,第 iii 只青蛙每次可以从 kkk 号点跳到 k+a[i]k+a[i]k+a[i] 号点,现在这 nnn 只青蛙可以跳跃无穷次,问最后哪些点被青蛙曾经跳进去过。 题解: 很明显,第 iii 只青蛙只会跳 gcd(a[i],m)gcd(a[i],m)gcd(a[i],m) 那些点,我们令 a[i]=gcd(a[i],m)a[i]=gcd(a[i],m)a[i]=g原创 2020-09-11 12:28:19 · 187 阅读 · 1 评论 -
Educational Codeforces Round 81 (Rated for Div. 2) D. Same GCDs (容斥)
题目链接 题面: 题意: 给定两个整数 aaa,mmm。 询问满足 gcd(a,m)=gcd(a+x,m)gcd(a,m)=gcd(a+x,m)gcd(a,m)=gcd(a+x,m) 且 0≤x<m0\le x<m0≤x<m 的不同xxx 的个数。 题解: 我们设 g=gcd(a,m)g=gcd(a,m)g=gcd(a,m),那么我们有 gcd(k1∗g+x,k2∗g)=ggcd(k1*g+x,k2*g)=ggcd(k1∗g+x,k2∗g)=g,即 x=k3∗gx=k3*gx=k3∗g原创 2020-09-11 09:00:37 · 165 阅读 · 1 评论 -
计蒜客----Little M‘s attack plan (容斥)
题目链接 题面: 题意: 给定一棵树,点有点权。 给定一个点 xxx,和一个非负整数 kkk,问与 xxx 点相距不超过 kkk 距离的点的权值和。 其中每条边的距离为1。 题解: 我们设根为 111 号节点。 我们设 dp[x][k]dp[x][k]dp[x][k] 为 xxx 点的子树中距离 xxx 不超过 kkk 的点的权值和。 对于dp[x][k]dp[x][k]dp[x][k]我们只需要维护一个层数的树状数组即可求出。 那么对于我们要求的 ans[x][k]ans[x][k]ans[x][k]原创 2020-08-25 10:52:55 · 81 阅读 · 0 评论