容斥原理
文章平均质量分 78
未水
这个作者很懒,什么都没留下…
展开
-
hdu1695 容斥原理
抄来的代码,第一次搞容斥原理。原问题转化为 gcd(x,y)=k -> gcd(x/k,y/k)=1,两者互质的问题首先联想到欧拉函数,它是互质问题计数的工具,但它只能解决(x,y) 中x但现在范围不一样,就要用到容斥原理求出超出范围那些部分当(x,y)中x>y,要一个一个用容斥原理求【b+1,d】中每个数的质因数能否整除【1,b】中的数,那些不能的就是互质的区间中与i不互质的原创 2013-07-02 19:48:41 · 637 阅读 · 0 评论 -
hdu4059 容斥原理的好题
1.首先要知道4次方求和的公式2.注意求和公式中有除以30应该乘以30的逆3.容斥原理即 原来的所有和 - 1个质因数的倍数 + 2个质因数的倍数 - 3个质因数的倍数 + 4个质因数的倍数……每个质因数的贡献就是getsum(n/link[i]) * four(link[i]),比如质因数是2时,就是 (1^4+2^4+3^4+4^4......+(n/2)^4) * (2原创 2013-07-04 16:34:37 · 1151 阅读 · 0 评论 -
zoj 3638 经典容斥原理
有n种物品,要取m种出来,如果每种物品的数量没有限制,答案为C(m,m+n-1)---多重集的计数1.现在限制,某种物品大于x,解决方法是,m-=x 后 又按原来的方法解决2.限制 ,物品a1小于x1,a2小于x2,……转化为容斥问题容斥原理附上两种写法#include #include #include using namespace std;#define原创 2013-07-13 19:53:37 · 1258 阅读 · 0 评论