51NOD 1136 欧拉函数模板
来源:互联网 发布:英语语言变迁 知乎 编辑:程序博客网 时间:2024/04/20 23:47
#include<stdio.h>
#include<iostream>
#include<cstring>
#include<algorithm>
#define LL long long
#define maxn 10000
using namespace std;
const int SIZE = 100000001;
int phi[SIZE];
void init()
{
int i, j;
memset(phi, 0, sizeof(phi));
phi[1] = 1;
for(int i = 2; i < SIZE; i++) if(!phi[i])
{
for(j = i; j < SIZE; j+=i)
{
if(!phi[j]) phi[j] = j;
phi[j] = phi[j] / i * (i-1);
}
}
return ;
}
int main()
{
int n=0;
init();
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",phi[n]);
}
#include<iostream>
#include<cstring>
#include<algorithm>
#define LL long long
#define maxn 10000
using namespace std;
const int SIZE = 100000001;
int phi[SIZE];
void init()
{
int i, j;
memset(phi, 0, sizeof(phi));
phi[1] = 1;
for(int i = 2; i < SIZE; i++) if(!phi[i])
{
for(j = i; j < SIZE; j+=i)
{
if(!phi[j]) phi[j] = j;
phi[j] = phi[j] / i * (i-1);
}
}
return ;
}
int main()
{
int n=0;
init();
while(scanf("%d",&n)!=EOF)
{
printf("%d\n",phi[n]);
}
}
int euler(int n)
{
int ans=1;
int i;
for(i=2;i*i<=n;i++)
{
if(n%i==0)
{
n/=i;
ans*=i-1;
while(n%i==0)
{
n/=i;
ans*=i;
}
}
}
if(n>1)
ans*=n-1;
return ans;
}
0 0
- 51NOD 1136 欧拉函数模板
- 51nod 1136 欧拉函数 【模板 】
- [杜教筛模板] 51Nod 1239 欧拉函数之和
- 51nod - 1136 欧拉函数(欧拉函数)
- 51nod 1136 欧拉函数(欧拉函数)
- 51nod 1136 欧拉函数
- 51nod 1136 欧拉函数
- 51nod 1136 欧拉函数
- 51nod-1136 欧拉函数
- 51nod 1136 欧拉函数
- 51nod-【1136 欧拉函数】
- 51nod-【1136 欧拉函数】
- 51Nod 1136 欧拉函数
- [51nod 1136 欧拉函数]
- 51Nod-1136 欧拉函数【数论】
- 51nod 1136 欧拉函数【数论】
- 51Nod-1136-欧拉函数
- 51Nod 1136 欧拉函数
- Android Studio gradle 文件中 ${supportLibVersion} 用法
- Android/java读中文文件部分字母乱码的问题
- OpenGL&CG技术之Render To Texture
- 时间的一些常用构造方法和注意事项
- 【MySQL】常用MySQL语句
- 51NOD 1136 欧拉函数模板
- mysql优化-sql语句
- Activiti 5.17 JNDI数据源配置
- 中华人民共和国护照
- 浅谈urllib2中内部调用流程
- Prim算法生成最小生成树
- C#读取xml文件
- http协议介绍(servlet)
- Hibernate——org.hibernate.StaleStateException: Batch update returned unexpected row count from update