poj 2773
2011-03-31 10:35
169 查看
欧拉函数。
代码:
代码:
#include<iostream> #include<fstream> #include<cmath> using namespace std; int a[1001]; int b[1000001]; int n,m; void read(){ // ifstream cin("in.txt"); int i,j,k,ans,s; for(i=4;i<=1000;i+=2) a[i]=1; for(i=3;i<=1000;i+=2) if(a[i]==0) for(j=2*i;j<=1000;j+=i) a[j]=1; while(cin>>n>>m){ s=n;ans=1; memset(b,0,sizeof(b)); for(i=2;i<=n&&i*i<=s;i++) if(a[i]==0&&n%i==0) { j=0; while(n%i==0) { n/=i; j++; } ans*=pow(1.*i,j-1)*(i-1); for(j=i;j<=s;j+=i) b[j]=1; } if(n>1) { ans*=n-1; for(j=n;j<=s;j+=n) b[j]=1; } k=(m-1)%ans; k++; j=0; for(i=1;i<=s;i++) if(b[i]==0) { j++; if(j==k) break; } cout<<(m-1)/ans*s+i<<endl; } } int main(){ read(); return 0; }
相关文章推荐
- POJ 2773 Happy 2006
- poj 2773 容斥原理+二分
- poj 2773(容斥原理)
- POJ 2773 Happy 2006 题解与分析
- poj 2773 Happy 2006
- Poj 2773 Happy 2006(枚举互素数)
- POJ - 2773 Happy 2006 (互素的一点性质)
- POJ 2773 Happy 2006
- POJ 2773 Happy 2006 (容斥原理)
- POJ-2773 2分夹逼+DFS解容斥..
- POJ-------2773
- Happy 2006(poj 2773)
- poj 2773 欧几里得 一个拓展应用
- poj2773 —— 二分 + 容斥原理 + 唯一分解定理
- poj 2773 利用欧拉函数求互质数
- poj_2773_Happy 2006
- POJ 2773 Happy 2006(容斥原理)
- poj 2773 Happy 2006(容斥原理)
- POJ 2773 互素问题
- POJ 2773 Happy 2006 二分+容斥原理