一:直接求欧拉函数 二:打表 三:欧拉函数的线性筛法 原理:1:若p是质数,则φ(p)=p-1; 2:若i%p==0,则φ(i*p)=p*φ(i); 3:若i%p!=0,则φ(i*p)=φ(i)*(p-1) ...
分类:
其他好文 时间:
2018-10-07 15:32:27
阅读次数:
141
一:三种基本的素数判定 1:穷举法:适用于数据较小的时候。时间复杂度:O() 2:埃拉托瑟尼筛法求素数 时间复杂度:O() 3:欧拉筛法 ...
分类:
其他好文 时间:
2018-10-07 13:47:47
阅读次数:
168
一 埃拉托斯特尼筛法(思路非常好 就是复杂度有点高 )( o(nlognlogn) ) 原理 质数的倍数不是质数 一个数不是比他小的数(1除外)的倍数这个数是质数。 2是质数 4,6,8,10....不是质数(打个标记) 3是质数(没有被标记) ,6,9,....不是质数(同样打标记) 4不是质数( ...
分类:
其他好文 时间:
2018-10-06 11:59:03
阅读次数:
130
不知道大家有没有做过一道叫做瑞士轮的题,是不是当时被卡飞了 除非你是在成为dalao之后做的 然后我们再看了众多题解后,我们遇到了形形色色的素数筛 首先是最牛逼的暴力 O(n√ ̄n)(真骚) 我们就不放代码了 然后就是一个奇奇怪怪的筛法,叫做埃氏筛法 时间复杂度是O(nloglogn) 代码的话去别 ...
分类:
其他好文 时间:
2018-10-04 09:22:40
阅读次数:
113
#include #include #include #include #include using namespace std; #define maxn 50000 int vis[maxn], isprime[5200], num[100005], k; void prime()//只需要把[... ...
分类:
其他好文 时间:
2018-09-30 18:13:04
阅读次数:
174
给出N个正整数,检测每个数是否为质数。如果是,输出"Yes",否则输出"No"。 Input 第1行:一个数N,表示正整数的数量。(1 <= N <= 1000) 第2 - N + 1行:每行1个数(2 <= S[i] <= 10^9) Output 输出共N行,每行为 Yes 或 No。 Inpu ...
分类:
其他好文 时间:
2018-09-28 00:04:58
阅读次数:
144
题目链接: 题意 抱歉,我给忘了,现在看题目又看不懂: P 思路 筛法+dp 话说这个函数应该是积性函数,然后就想到了动态规划优化筛法。 提交过程 ||| : |: AC| 代码 cpp include include const int maxp=1e6, maxn=5e6+20; int pri ...
分类:
其他好文 时间:
2018-09-04 22:32:57
阅读次数:
203
http://www.sohu.com/a/108570901_372416 哥德巴赫猜想, 这个话题其实在网上可以找到很多资料, 我就加一些我自己的话吧. 这的确是好话题. 为什么这么说呢, 因为哥德巴赫猜想(简称"1+1")可以说是在中国知名度最高的数学难题. 如果有人上大街做个调查, 让路人甲 ...
分类:
其他好文 时间:
2018-08-29 10:50:41
阅读次数:
185
欧拉函数:<=n中与n互质数的个数 1)单值:按题意暴力, 2)筛法:先用euler[i]数组内值代表初始状态(是否已被操作),a b种的表达方式不同而已 性质: 1) 积性函数 若m,n互质, 特:当n为奇数时, 2)n为质数 ...
分类:
其他好文 时间:
2018-08-20 20:16:02
阅读次数:
179
素数的定义:除了1和它本身之外,不能被其他整数整除。 一、判定一个正整数n是否为素数的方法: ①定义法:枚举2~n-1这n-2个正整数,如果它们均不能整除n,则可断定n为素数。代码如下:时间复杂度为O(n),如果n为10^9,就不能用此方法。 ②从2开始枚举到不大于sqrt(n)的所有正整数,如果它 ...
分类:
其他好文 时间:
2018-08-16 17:45:39
阅读次数:
147