BZOJ 4802: 欧拉函数 (Pollard-Rho)】的更多相关文章

4802: 欧拉函数 Description 已知N,求phi(N) Input 正整数N.N<=10^18 Output 输出phi(N) Sample Input 8 Sample Output 4 很明显,这样的题就是一道十分简单的入门题.只是N比较大,但输入和输出都还没有爆long long.如果输入高精度数,那 就很恶心了(虽然可以定义大整数类Big Int). phi[n]=n∏(1-(1/p)),所以是Miller-Rabin和Pollard-Rho算法,用来分解一个大数的质因子.…
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4802 [题目大意] 已知N,求phi(N),N<=10^18 [题解] 我们用Pollard_Rho对N进行质因数分解,然后计算欧拉函数即可. [代码] #include <cstdio> #include <algorithm> #include <cmath> #include <vector> #define C 2730 #defi…
开始一直T,原来是没有srand- CODE #include<bits/stdc++.h> using namespace std; typedef long long LL; vector<LL>arr; inline LL multi(LL a, LL b, LL p) { LL re = a * b - (LL)((long double) a / p * b + 1e-8) * p; return re < 0 ? re + p : re; } LL gcd(LL…
解题思路类似莫比乌斯函数之和 题目大意:求[1,n]内的欧拉函数$\varphi$之和.($n<=2*10^{9}$) 思路:令$ M(n)=\sum_{i=1}^{n}\varphi (i)  $,题目所求即为$ M(n) $. 由于$ \sum_{d|n} \varphi (d)=n $ ,所以$ \sum_{i=1}^{n} \sum_{d|i} \varphi (d)=\frac{n(n+1)}{2} $ 令$ i=kd $,则有$ \sum_{i=1}^{n} \sum_{d|i} \…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2818 枚举最大公约数,对于每一个质数p,只需要求出1<=x,y<=(n/p)范围内gcd(x,y)=1的对数,而这个对数就是类似欧拉函数的一个前缀和. #include<cstdio> #include<cstring> using namespace std; ; bool check[maxn]; int prime[maxn]; long long phi…
思路: 递推出来欧拉函数 搞个前缀和 sum[n-1]*2+3就是答案 假设仪仗队是从零开始的 视线能看见的地方就是gcd(x,y)=1的地方 倒过来一样 刨掉(1,1) 就是ans*2+1 再加一下第零行第零列的两个 就是结果了 //By SiriusRen #include <cstdio> using namespace std; #define N 40005 int n,prime[N],vis[N],phi[N],tot; long long ans; int main(){ sc…
https://www.lydsy.com/JudgeOnline/problem.php?id=4805 给出一个数字N,求sigma(phi(i)),1<=i<=N https://blog.csdn.net/popoqqq/article/details/45023331 ←杜教筛的一些讲解 杜教筛用来求积性函数前缀和,本题同bzoj 3944,bzoj 3944多了一个求sigma( μ ( i ) ) #include<iostream> #include<cstd…
Description 给出一个数字N,求sigma(phi(i)),1<=i<=N Input 正整数N.N<=2*10^9 Output 输出答案. Sample Input 10 Sample Output 32 Solution 杜教筛裸题 #include<bits/stdc++.h> #define ui unsigned int #define ll long long #define db double #define ld long double #defi…
找了一些曾经没提到的算法.这应该是数学基础系最后一篇. 曾经的文章: 数学基础I 莫比乌斯反演I 莫比乌斯反演II 数学基础II 生成函数 数学基础III 博弈论 容斥原理(hidden) 线性基(hidden) 卡特兰数/第二类斯特林数(hidden) 置换群(hidden) 莫比乌斯反演III(hidden) 线性筛(hidden) 欧拉函数 计算单个欧拉函数 设\(n\)的唯一分解为\(p_i\),则\(\varphi(n)=n\prod(1-\frac{1}{p_i})\). 奇偶性 \…
BZOJ_4802_欧拉函数_MR+pollard rho+欧拉函数 Description 已知N,求phi(N) Input 正整数N.N<=10^18 Output 输出phi(N) Sample Input 8 Sample Output 4 直接MR+Pollard rho分解质因数即可.具体可见https://www.cnblogs.com/suika/p/9127065.html 记得判重,我的map不知道为何T了.   代码: #include <cstdio> #inc…