
素数筛选法
芋智波佐助
菜鸟一只
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Light OJ 1356 Prime Independence 最大独立集+素数筛选
题目来源:Light OJ 1356 Prime Independence题意:给你n个数 选出最多的数构成一个集合使得任何2个数不是另外一个数的质数倍 x!=k*y 思路:矛盾的2个数连边 并且所有数分成质因子数为奇数和偶数两部分 以质因子奇偶不同构建二分图 同奇 同偶的数一定不是另外一个数的质数倍判断矛盾 首先对每个数因子分解 例如x 有a1个p1质因子 a2个p2质因子...an原创 2014-08-06 16:52:43 · 1690 阅读 · 0 评论 -
Light 1289 LCM from 1 to n 素数筛选位优化
题目来源:Light 1289 LCM from 1 to n题意:。。思路:从1到n 打过某个数是以一个素数的几次方 那么答案就乘以这个素数主要是筛选素数 存不下 位优化 一个整数32位标记32个数 内存缩小32倍是学习别人的#include #include #include #include using namespace std;const int maxn原创 2014-06-10 15:07:29 · 1098 阅读 · 0 评论 -
Light OJ 1278 Sum of Consecutive Integers N拆分成连续整数和
题目来源:Light OJ 1278 Sum of Consecutive Integers题意:N拆分成连续整数和的方案数思路:奇因数的个数#include #include #include #include using namespace std;//筛素数 const int maxn = 10000010;bool vis[maxn];int prime[10原创 2014-06-05 20:16:49 · 1212 阅读 · 0 评论 -
POJ 2689 Prime Distance 素数筛选法应用
题目来源:POJ 2689 Prime Distance题意:给出一个区间L R 区间内的距离最远和最近的2个素数 并且是相邻的 R-L 思路:一般素数筛选法是拿一个素数 然后它的2倍3倍4倍...都不是 然后这题可以直接从2的L/2倍开始它的L/2+1倍L/2+2倍...都不是素数首先筛选出一些素数 然后在以这些素数为基础 在L-R上在筛一次因为 R-L #include #i原创 2014-05-15 14:53:58 · 947 阅读 · 0 评论 -
UVa 11426 GCD - Extreme (II) / 素数筛选 + 欧拉函数
输入正整数n,求gcd(1,2)+gcd(1,3)+gcd(2,3)+...+gcd(n-1,n)设f(n) = gcd(1,n)+gcd(2,n)+...+gcd(n-1,n)所求s(n) = f(2)+f(3)+...+f(n) = s(n-1)+f(n);gcd(x,n) = i gcd(x/i,n/i) = 1 满足条件的x/i有phi(n/i)个(欧拉函数)可以按照素原创 2014-01-17 18:53:06 · 1260 阅读 · 0 评论 -
TOJ 3349 Counting Divisor / 素数筛选法
Counting Divisor 时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte 描述If an integer A can divide integer B exactly, then A can be called a divisor of B.Now there are N (1原创 2013-10-23 20:15:57 · 1224 阅读 · 0 评论 -
Light OJ 1028 Trailing Zeroes (I) 求n因子数
题目来源:Light OJ 1028题意:求一个数转化成任意进制后末尾有0的种数 就是一个数因子的个数思路:一个数可以被分解成若干素数相乘 p1^x1*p2^x2*...*pn^xn 根据乘法原理 因子数为 (x1+1)*(x2+1)*...*(xn+1)注意剪枝#include #include #include #include using namespace st原创 2014-05-19 14:02:21 · 961 阅读 · 0 评论 -
BZOJ 1025 游戏 DP+lcm+素数筛选
排数=lcm{Ai,Ai表示循环节长度},sum(Ai)=n根据lcm的定义,分解质因数拆掉Ai=p1^x1*p2^x2*...*pk^xklcm=∏(pi^max{xi})所以我们只看max{xi}即可,即忽略掉≤max{xi}的其它因子。所以问题等价于:sum(pi^xi)≤n的方案数。然后随便dp即可设d(i,j) 表示前i个质数和为j的方案,有d(i,j)=d(i−1,j)原创 2016-07-22 09:02:37 · 352 阅读 · 0 评论