hdu 4715(打表)
来源:互联网 发布:linux多线程编程 书籍 编辑:程序博客网 时间:2024/06/07 01:23
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4715
思路:先打个素数表,然后判断一下就可以了。
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 #include<cmath> 6 using namespace std; 7 8 bool isprime[7000002]; 9 int num[7000000];10 11 int main()12 {13 int k=0;14 memset(isprime,true,sizeof(isprime));15 isprime[0]=isprime[1]=false;16 for(int i=2;i<sqrt(7000000*1.0);i++){17 if(isprime[i]){18 for(int j=i*i;j<7000000;j+=i){19 isprime[j]=false;20 }21 }22 }23 for(int i=1;i<7000000;i++){24 if(isprime[i])num[k++]=i;25 }26 int _case,n;27 scanf("%d",&_case);28 while(_case--){29 scanf("%d",&n);30 if(n==0){31 puts("2 2");32 }else if(n<0){33 n=-1*n;34 bool flag=false;35 for(int i=0;i<k;i++){36 if(isprime[num[i]+n]){37 flag=true;38 printf("%d %d\n",num[i],num[i]+n);39 break;40 }41 }42 if(!flag)puts("FAIL");43 }else {44 bool flag=false;45 for(int i=0;i<k;i++){46 if(isprime[num[i]+n]){47 flag=true;48 printf("%d %d\n",num[i]+n,num[i]);49 break;50 }51 }52 if(!flag)puts("FAIL");53 }54 }55 return 0;56 }
0 0
- hdu 4715(打表)
- hdu 4715 素数打表
- HDU 5317(打表)
- hdu--2089(打表)
- hdu 4715 Difference Between Primes (打表 枚举)
- HDU 4715 Difference Between Primes (打表)
- HDU 1215(数论,打表 - -|)
- HDU 2136(数论,筛选打表)
- hdu 1085 Humble Numbers(打表)
- hdu 1431 素数回文 (打表)
- HDU 2161 Primes(素数打表)
- HDU 2011 - 多项式求和(打表)
- hdu 4548(素数打表)
- HDU 1058 Humble Numbers (打表)
- hdu 1032 (记忆化+打表)
- hdu 1216 (vector || 打表)
- hdu 1431 素数回文(打表)
- hdu 4690 EBCDIC(打表)
- hdu 3599(最短路+最大流)
- php5.3.x连接sql server 2005 (php5.3连接mssql)
- hdu 3667(拆边+最小费用最大流)
- hdu 1011(树形dp)
- hdu 2412(树形dp)
- hdu 4715(打表)
- hdu 4708(暴力+找规律)
- hdu 3905(dp)
- hdu 4714(树形dp)
- hdu 3899(树形dp)
- hdu 4003(树形dp)
- hdu 2196(求树上每个节点到树上其他节点的最远距离)
- hdu 2809(状压dp)
- hdu 1561(树形dp)