博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 2407 Relatives
阅读量:5289 次
发布时间:2019-06-14

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

欧拉函数的应用,素数定理;

看了DISCUSS中那段超短的代码后才明白欧拉函数直接解决,我之前想的是集合中的容斥定理,实际上这里欧拉公式也实质上就是容斥定理;

另外用了刚学的优化的筛法计算素数表。

# include 
# define N 1000005int m;char pt[N];int p[N/10];void build_ptable(void);int solve(int n);int main(){ int n; build_ptable(); while (~scanf("%d", &n) && n) printf("%d\n", solve(n)); return 0;}void build_ptable(void){ int i, j, k; m = 0; for (i = 2; i < N; ++i) { if (!pt[i]) p[m++] = i; for (j = 0; j
1; ++i) if (n%p[i] == 0) { ret = ret - ret/p[i]; while (n%p[i] == 0) n /= p[i]; } if (ret == n) return (n==1 ? 0:n-1); return ret;}

转载于:https://www.cnblogs.com/JMDWQ/archive/2012/05/05/2484742.html

你可能感兴趣的文章
thinkphp 防sql注入
查看>>
Go语言规范1 - 统一规范篇
查看>>
s5-11 距离矢量路由选择协议
查看>>
MSSQL-SQL SERVER一些使用中的技巧
查看>>
用Vue中遇到的问题和处理方法(一)
查看>>
ASP.Net 打通服务器代码和前台界面的特殊符号
查看>>
201521123044 《Java程序设计》第1周学习总结
查看>>
winform 实现类似于TrackBar的自定义滑动条,功能更全
查看>>
MIT Scheme 的基本使用
查看>>
程序员的“机械同感”
查看>>
RAP在centos上的部署
查看>>
java 8 新特性
查看>>
在16aspx.com上下了一个简单商品房销售系统源码,怎么修改它的默认登录名和密码...
查看>>
VS2015 create a C++ console application based on WinRT
查看>>
c++回调函数
查看>>
神经网络初探
查看>>
linux下Rtree的安装
查看>>
【Java】 剑指offer(53-2) 0到n-1中缺失的数字
查看>>
Delphi中ListView类的用法
查看>>
POJ 1202 Family 概率,DP,高精 难度:2
查看>>