AcWing 874. 筛法求欧拉函数


#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e6+;
int primes[N],cnt;
int phi[N];
bool st[N];
ll get_eulers(int n) {
phi[]=;
for(int i=; i<=n; i++) {
if(!st[i]) {
primes[cnt++]=i;
phi[i]=i-;
}
for(int j=; primes[j]<=n/i; j++) {
st[primes[j]*i]=true;
if(i%primes[j]==) {
phi[primes[j]*i]=phi[i]*primes[j];
break;
}
phi[primes[j]*i]=phi[i]*(primes[j]-);
}
}
ll res=;
for(int i=; i<=n; i++) {
res+=phi[i];
}
return res;
}
int main() {
int n;
cin>>n;
cout<<get_eulers(n)<<endl;
return ;
}
AcWing 874. 筛法求欧拉函数的更多相关文章
- 筛法求欧拉函数(poj2478
		求1-n的欧拉函数的值 #include <iostream> #include <cstdio> #include <queue> #include <al ... 
- hdu 2814  快速求欧拉函数
		/** 大意: 求[a,b] 之间 phi(a) + phi(a+1)...+ phi(b): 思路: 快速求欧拉函数 **/ #include <iostream> #include & ... 
- 欧拉函数,打表求欧拉函数poj3090
		欧拉函数 φ(n) 定义:[1,N]中与N互质的数的个数 //互质与欧拉函数 /* 求欧拉函数 按欧拉函数计算公式,只要分解质因数即可 */ int phi(int n){ int ans=n; ;i ... 
- HDU2824-The Euler function-筛选法求欧拉函数+求和
		欧拉函数: φ(n)=n*(1-1/p1)(1-1/p2)....(1-1/pk),其中p1.p2-pk为n的所有素因子.比如:φ(12)=12*(1-1/2)(1-1/3)=4.可以用类似求素数的筛 ... 
- HDU 2824.The Euler function-筛选法求欧拉函数
		欧拉函数: φ(n)=n*(1-1/p1)(1-1/p2)....(1-1/pk),其中p1.p2…pk为n的所有素因子.比如:φ(12)=12*(1-1/2)(1-1/3)=4.可以用类似求素数的筛 ... 
- 【poj2478-Farey Sequence】递推求欧拉函数-欧拉函数的几个性质和推论
		http://poj.org/problem?id=2478 题意:给定一个数x,求<=x的数的欧拉函数值的和.(x<=10^6) 题解:数据范围比较大,像poj1248一样的做法是不可行 ... 
- O(n)求素数,求欧拉函数,求莫比乌斯函数,求对mod的逆元,各种求
		筛素数 void shai() { no[1]=true;no[0]=true; for(int i=2;i<=r;i++) { if(!no[i]) p[++p[0]]=i; int j=1, ... 
- AcWing 220. 最大公约数 | 欧拉函数
		传送门 题目描述 给定整数N,求1<=x,y<=N且GCD(x,y)为素数的数对(x,y)有多少对. GCD(x,y)即求x,y的最大公约数. 输入格式 输入一个整数N 输出格式 输出一个 ... 
- AcWing    220.最大公约数    欧拉函数打卡
		题目:https://www.acwing.com/problem/content/222/ 题意:求1-n范围内,gcd(x,y)是素数的对数 思路:首先我们可以针对每个素数p,那么他的贡献应该时 ... 
随机推荐
- 使用 Hyper-V 替代 VMware
			目前我又用回了vmware,原因是,Hyper-V性能不如vmware,而且导出的虚拟机文件,再导入会出现奇怪的问题.不省心. Hyper-V是什么 Hyper-V硬件要求为Windows 10 企业 ... 
- kali安装mongodb
			kali安装mongodb 1. 从官网下载需要的安装包 官网下载地址:https://www.mongodb.com/download-center/community 下载完后可以直接用xshel ... 
- [PAT] A1021 Deepest Root
			[题目大意] 给出n个结点和n-1条边,问它们能否形成一棵n个结点的树,如果能,从中选出结点作为树根,使整棵树的高度最大.输出所有满足要求的可以作为树根的结点. [思路] 方法一:模拟. 1 连通.边 ... 
- JAVA是否最适合企业应用开发?
			· JAVA是否最适合企业应用开发? 当我刚入行做程序员的时候,那是在01-02年,铺天盖地的都是java,j2ee,公司也使用java作为开发语言,我也就随大流加入javaer阵营. 从那时起,各种 ... 
- P1341 无序字母对【欧拉路径】- Hierholzer模板
			P1341 无序字母对 提交 24.87k 通过 6.80k 时间限制 1.00s 内存限制 125.00MB 题目提供者yeszy 难度提高+/省选- 历史分数100 提交记录 查看题解 标签 福建 ... 
- IDEA 和 Webstorm JAR包方式破解
			IDEA 和 Webstorm JAR包方式破解 IDEA 我是用的IDEA版本是 18.3,更新版本的IDEA很多激活码都不能用了,或者不好激活了. 首先下载相应的 软件版本 和破解 jar包. 下 ... 
- SpringBoot整合ActiveMQ开启持久化
			1.开启队列持久化 只需要添加三行代码 jmsTemplate.setDeliveryMode(2); jmsTemplate.setExplicitQosEnabled(true); jmsTemp ... 
- H5_0010:JS动态创建CSS,并向CSS中传入参数值
			1,在html中定义style 2,js中创建css,并添加进入head标签style中 !function(e, t, i) { n.classList && n.classList ... 
- C++->二进制文件流的输入输出
			C++->文件流的输入输出 1.书本里以“简单事务处理”为例子,解析二进制输入输出文件流的read和write函数的使用,以及输入输出文件流 过程中指针的捕获.定位,文件流位置的判断,二进制文件 ... 
- LaTeX技巧009:中国象棋的LaTeX排版
			Latex可以排版容易排版中国象棋, 围棋, 国际象棋棋谱和乐谱, 详情请见. http://bbs.chinatex.org/forum.php?mod=viewthread&tid=498 ... 
