POJ 2635 The Embarrassed Cryptographer
2013-05-19 09:09
447 查看
//Time 907ms, Memory 4480K
#include<iostream> #include<string> using namespace std; int vis[1000010],prime[80000]; int main() { int i,j,k=0,l,a[35],t; char s[105]; memset(vis,0,sizeof(vis)); memset(s,0,sizeof(s)); for(i=2;i*i<1000010;i++) if(!vis[i]) { for(j=i*i;j<1000010;j+=i) vis[j]=1; } for(i=2;i<1000010;i++) if(!vis[i]) prime[k++]=i; while(cin>>s>>l && ((strlen(s)!=1 || s[0]!='0') || l)) { j=0;i=strlen(s); for(i--;;i-=3) { if(i==-1) break; else if(i==0) { a[j++]=s[i]-48;break; } else if(i==1) { a[j++]=(s[i-1]-48)*10+s[i]-48;break; } else a[j++]=(s[i-2]-48)*100+(s[i-1]-48)*10+s[i]-48; } for(i=0;prime[i]<l;i++) { t=0; for(k=j-1;k>=0;k--) t=(t*1000+a[k])%prime[i]; if(!t) break; } if(prime[i]<l) cout<<"BAD "<<prime[i]<<endl; else cout<<"GOOD"<<endl; memset(s,0,sizeof(s)); } return 0; }
相关文章推荐
- poj2635——The Embarrassed Cryptographer(高精度取模)
- poj 2635 The Embarrassed Cryptographer
- The Embarrassed Cryptographer(POJ--2635
- POJ 2635 The Embarrassed Cryptographer 大数模
- POJ 2635 The Embarrassed Cryptographer
- POJ 2635 The Embarrassed Cryptographer
- POJ2635——The Embarrassed Cryptographer
- poj 2635 The Embarrassed Cryptographer ??/Java??(???)
- poj-2635-The Embarrassed Cryptographer
- poj 2635 The Embarrassed Cryptographer(数论)
- POJ2635----The Embarrassed Cryptographer
- POJ - 2635 The Embarrassed Cryptographer
- poj2635--The Embarrassed Cryptographer(数论篇1,大数取模)
- poj 2635 The Embarrassed Cryptographer
- poj 2635 The Embarrassed Cryptographer 筛素数+高精度除法
- [ACM] POJ 2635 The Embarrassed Cryptographer (同余定理,素数打表)
- [ACM] POJ 2635 The Embarrassed Cryptographer (同余定理,素数打表)
- poj 2635 The Embarrassed Cryptographer ——高精度取模
- POJ 2635 The Embarrassed Cryptographer(JAVA)
- POJ2635 The Embarrassed Cryptographer