POJ 2407 Relatives(欧拉函数入门题)
2024-10-11 01:53:51
Relatives
Given n, a positive integer, how many positive integers less than n are relatively prime to n? Two integers a and b are relatively prime if there are no integers x > 1, y > 0, z > 0 such that a = xy and b = xz.
Input
There are several test cases. For each test case, standard input contains a line with n <= 1,000,000,000. A line containing 0 follows the last case.
Output
For each test case there should be single line of output answering the question posed above.
Sample Input
7
12
0
Sample Output
6
4 题意:输入个n,求(1,n-1)与n互质的个数有多少个
思路:这明显就是欧拉函数模版题,就是求n的欧拉数
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
typedef long long ll;
ll phi(ll n)//求n的欧拉数
{
ll sum=n;
for(int i=;i*i<=n;i++)//O(根号n的复杂度)
{
if(n%i==)
{
sum=sum-sum/i;
do
{
n/=i;
}while(n%i==);
}
}
if(n>) sum=sum-sum/n;
return sum;
}
int main()
{
ll n;
while(scanf("%lld",&n)!=EOF)
{
if(n==)
break;
printf("%lld\n",phi(n));
}
}
最新文章
- 【POJ 2406】Power Strings(KMP循环节)
- openldap自定义schema
- [Bootstrap]7天深入Bootstrap(1)入门准备
- Linux下面对于VIM编辑器的代码折叠使用与screen
- Btrace
- 2015华为机试——数字基root
- big_table练习数据表
- Builder模式的几个要点
- 如何统一删除word中的超链接
- 12行代码 让浏览器崩溃,iPhone重启
- Chapter 16_1 Class
- 转载:org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.Annotation
- Nginx之(四)工作原理
- 委托与lambda关系
- Kubernetes — 深入解析Pod对象:基本概念(二)
- react-native 引入某些低三方库时出现的Command `run-android` unrecognized,命令不识别错误
- Vue的双向数据绑定
- My Brute HDU - 3315(KM || 费用流)
- dubbo源码分析1——SPI机制的概要介绍
- RHCS(概念篇)