博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu5430 Reflect
阅读量:6361 次
发布时间:2019-06-23

本文共 1113 字,大约阅读时间需要 3 分钟。

欧拉函数:Φ(n)= n * ∏(1 - 1/pi), 其中pi是n的素因子。

表示不超过n且与n互质的正整数的数目,由容斥原理易证。

 

 

1 #include 
2 #include
3 #include
4 #include
5 6 using namespace std; 7 8 const int maxn = 1e6 + 10; 9 int prime[100], k;10 int n, m;11 12 void solve(){13 k = 0;14 if(n % 2 == 0){15 prime[k++] = 2;16 while(n % 2 == 0) n /= 2;17 }18 int mid = (int)sqrt(n);19 for(int i = 3; i <= mid; i += 2){20 if(n % i == 0){21 prime[k++] = i;22 while(n % i == 0) n /= i;23 mid = (int)sqrt(n);24 }25 }26 if(n != 1) prime[k++] = n;27 int ans = m;28 for(int i = 0; i < k; i++) ans /= prime[i];29 for(int i = 0; i < k; i++) ans *= (prime[i] - 1);30 printf("%d\n", ans);31 }32 33 int main(){34 //freopen("in.txt", "r", stdin);35 int T;36 scanf("%d", &T);37 while(T--){38 scanf("%d", &n);39 ++n;40 m = n;41 solve();42 }43 return 0;44 }
View Code

 

转载于:https://www.cnblogs.com/astoninfer/p/4798475.html

你可能感兴趣的文章
EGLImage与纹理
查看>>
Redis(七):Jedis简介和集群
查看>>
Web API 持续集成:PostMan+Newman+Jenkins(图文讲解)
查看>>
证书生成加密码解密
查看>>
弹窗查看内容时 内容滚动区域设置为body区
查看>>
Windows Azure Platform Introduction (6) Windows Azure应用程序运行环境
查看>>
Windows Azure VM Role (3) 在VHD中安装Windows Server 2008 R2
查看>>
Windows 8 Platform (三) Windows 8 Developer Preview
查看>>
根据条件用一个表的字段,去更新另一个表的字段
查看>>
thinkphp模板中使用自定义函数
查看>>
TP复习3
查看>>
(Delphi) Using the Disk Cache 使用磁盘缓存
查看>>
用Feature的方式删除SharePoint2010的Page中重复的WebPart
查看>>
递归算法学习系列之三(快速排序)
查看>>
从TdataSet生成OleVariant
查看>>
预告和目录: Wayne Game Solution 0.1 网络游戏大厅 从最基础开始
查看>>
xBIM WeXplorer xViewer的导航,相机、剖切、隐藏 等操作
查看>>
(转)预编译头文件
查看>>
艾伟_转载:浅析IHttpModule和IHttpHandler
查看>>
百万级访问量网站的技术准备工作
查看>>