BZOJ 2190 欧拉函数】的更多相关文章

思路: 递推出来欧拉函数 搞个前缀和 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…
解题思路类似莫比乌斯函数之和 题目大意:求[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} \…
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…
题目链接: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…
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…
开始一直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…
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2190 [题意] n*n的正方形,在(0,0)格点可以看到的格子数目. [思路] 预处理出欧拉函数. (x,y)=1,1<=y<=n,x<y的数对为t=sigma{ phi(i) } 1<=i<=n,则答案为2*t+1. 当然也可以用莫比乌斯反演求,懒得写了 (〜 ̄△ ̄)〜 [代码] #include<cmath> #include<cstdio&…
2190: [SDOI2008]仪仗队 Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 2245  Solved: 1413[Submit][Status][Discuss] Description 作为体育委员,C君负责这次运动会仪仗队的训练.仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图).    现在,C君希望你告诉他队伍整齐时能看到的学生人数.…