
素数
AimerAimerAimer
我人很懒,什么都没写
展开
-
197. 阶乘分解(质数)
阶乘分解给定整数 N ,试把阶乘 N! 分解质因数,按照算术基本定理的形式输出分解结果中的 pi 和 ci 即可。输入格式一个整数N。输出格式N! 分解质因数后的结果,共若干行,每行一对pi,ci,表示含有pcii项。按照pi从小到大的顺序输出。数据范围1≤N≤106输入样例:5输出样例:2 33 15 1样例解释5!=120=23∗3∗5思路:最大质因数肯定不超过n,线性筛求1~n的素数例如:5的阶乘,找2的次方数,那么我们先用5/2 得 2个,那就是说2的倍数的数有.原创 2020-08-14 12:04:51 · 671 阅读 · 0 评论 -
素数打表法
埃拉托斯特尼筛法虽然已经将时间复杂度降低到O(n*logn),但是还是有不足之处。因为6在i=2时就被标记了,而在i=3的时候又被标记了一次,所以还是有改进的空间。const int N=1e6+5;int cnt=0,prime[N],n;int vis[N];void get_prime()//打素数表 普通筛法{ memset(vis,0,sizeof(vis));//假设都是素数 for(int i=2;i<=n;i++) { if(!vis原创 2020-08-10 21:20:18 · 195 阅读 · 0 评论 -
1620:质因数分解
1620:质因数分解时间限制: 1000 ms 内存限制: 524288 KB提交数: 1629 通过数: 1079【题目描述】原题来自:NOIP 2012 普及组已知正整数 n 是两个不同的质数的乘积,试求出较大的那个质数。【输入】输入只有一行,包含一个正整数 n。【输出】输出只有一行,包含一个正整数 p,即较大的那个质数。【输入样例】21【输出样例】7【提示】数据范围与提示:对于 30% 的数据,n≤1000;对于全部数据,6≤n≤2×109 。原创 2020-08-10 19:39:58 · 606 阅读 · 0 评论 -
1619: 【例 1】Prime Distance ( 区间素数筛)
【题目描述】原题来自:Waterloo local,题面详见 POJ 2689给定两个整数 L,R,求闭区间 [L,R] 中相邻两个质数差值最小的数对与差值最大的数对。当存在多个时,输出靠前的素数对。【输入】多组数据。每行两个数 L,R。【输出】详见输出样例。【输入样例】2 1714 17【输出样例】2,3 are closest, 7,11 are most distant...原创 2020-04-17 10:28:34 · 995 阅读 · 0 评论