
容斥定理
Winterfell30
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HDOJ 1796 How many integers can you find (容斥)
题意求n以内有多少个数能整除至少一个给出的数组中的数。思路经典的裸容斥,把所有的因子相乘的情况枚举一下奇数加,偶数减就可以了。 这个题有个很坑的地方就是输入里面有0,不过幸好judge出来的RE,还是可以判断出来的。代码#include <stdio.h> #include <string.h> #include <iostream> #include <algorithm> #include <原创 2016-05-03 20:27:54 · 404 阅读 · 0 评论 -
URAL 1091 Tmutarakan Exams (DP或容斥)
题意给出一个K和S,求从小于S的数里取出一个K元组的gcd大于1的K元组的数量。思路可以dp做,dp的话是经典的计数问题,而且因为数据比较小写起来也比较简单,dp[i][j][k]表示枚举到i时取了j个数此时的gcd为k的个数,则dp[i+1][j+1][gcd(k,i+1)]+=dp[i][j][k],dp[i+1][j][k]+=dp[i][j][k]。 或者容斥,因为所有合数都能用素数来表示原创 2016-05-03 20:40:01 · 495 阅读 · 0 评论 -
ZOJ 2836 Number Puzzle (容斥)
题意给出n个数和一个m,求m内有多少个数是这n个数里任意数的倍数。思路枚举一下所有的这n个数的lcm,然后经典容斥,注意是lcm不是相乘。代码#include <stdio.h> #include <string.h> #include <iostream> #include <algorithm> #include <vector> #include <queue> #include <stack原创 2016-05-04 17:35:50 · 423 阅读 · 0 评论 -
HDOJ 4135 Co-prime (容斥)
题意求a和b之间有多少个数和n互斥。思路显然问题能转化成a-1之内和b之内与n互斥的个数,然后我们可以求它的反问题也就是m之内与n不互质的数字个数,某个数与n不互质也就是这个数能被n的某一个或多个质因子整除,然后就是经典容斥了。代码#include <stdio.h> #include <string.h> #include <iostream> #include <algorithm> #incl原创 2016-05-04 17:41:30 · 428 阅读 · 0 评论 -
POJ 2773 Happy 2006 (二分+容斥)
题意求与n互质的第k个数。思路显然求计数问题的第k个,我们二分出来mid以内有多少个和n互质的数就可以了。求m以内和n互质的数的个数就是那个比较经典的co prime题了。代码#include <stdio.h> #include <string.h> #include <iostream> #include <algorithm> #include <vector> #include <queue原创 2016-05-04 17:46:27 · 548 阅读 · 0 评论