usaco Prime Palindromes
生活随笔
收集整理的這篇文章主要介紹了
usaco Prime Palindromes
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
新技能get,可以這樣遍歷回文數(shù),的確厲害。注意剪枝不然超時(shí)。
/*
ID: jinbo wu
LANG:C++
TASK: pprime
*/
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int Prime(int n)
{ int i; double k; k=sqrt(n); for(i=2;i<=k;i++) { if (n%i==0) { return 0; } } return 1;
} int main()
{ freopen("pprime.in","r",stdin);freopen("pprime.out","w",stdout);int a,b,c,d,e,f,g,y; scanf("%d %d",&f,&g); for (a=5;a<=7;a++) { if(a<f)continue;if(a>g)return 0;if (Prime(a)==1&&a>=f&&a<=g) { printf("%d\n",a); } } for (a=1;a<=9;a+=2) { y=11*a; if(y<f)continue;if(y>g)return 0;if(Prime(y)==1&&y>=f&&y<=g) printf("%d\n",y); } for (a=1;a<=9;a+=2) { for(b=0;b<=9;b++) { y=a*101+10*b; if(y<f)continue;if(y>g)return 0;if(Prime(y)==1&&y>=f&&y<=g) printf("%d\n",y); } } for (a=1;a<=9;a+=2) { for(b=0;b<=9;b++) { for (c=0;c<=9;c++) { y=10001*a+1010*b+100*c; if(y<f)continue;if(y>g)return 0; if (Prime(y)==1&&y>=f&&y<=g) printf("%d\n",y); } } } for (a=1;a<=9;a+=2) { for (b=0;b<=9;b++) { for (c=0;c<=9;c++) { for (d=0;d<=9;d++) { y=1000001*a+100010*b+10100*c+1000*d;if(y<f)continue;if(y>g)return 0;if (Prime(y)==1&&y>=f&&y<=g) printf("%d\n",y); } } } } for (a=1;a<=9;a+=2) { for (b=0;b<=9;b++) { for (c=0;c<=9;c++) { for (d=0;d<=9;d++) { for (e=0;e<=9;e++) { y=100000001*a+10000010*b+1000100*c+101000*d+10000*e;if(y<f)continue;if(y>g)return 0; if (Prime(y)==1&&y>=f&&y<=g) printf("%d\n",y); } } } } } return 0;
}
總結(jié)
以上是生活随笔為你收集整理的usaco Prime Palindromes的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做指甲多少钱啊?
- 下一篇: 前两天有个妹纸发找裙子的帖子,谁能发我看