/* ID:tianlin2 PROG:pprime LANG:C++ */ #include <fstream> #include <iostream> #include <cmath> using namespace std; int ispalin(int a[],int n) { for(int i=0,j=n-1;i<j;++i,--j) if(a[i]!=a[j]) return 0; return 1; } int isprm(int a) { if(a<2) return 0; int j=2; while(j<=sqrt((double)a)&&a%j!=0) ++j; if(j>sqrt((double)a)) return 1; return 0; } int main() { ifstream fin("pprime.in"); ofstream fout("pprime.out"); int a[9]; int n=0; int x,y; fin>>x>>y; /* for(int i=x;i<=y&&i<9999999;++i){ n=0; int s=i; while(s!=0){ a[n++]=s%10; s/=10; } //if(isprm(i)&&ispalin(a,n)) fout<<i<<endl; if(ispalin(a,n)&&isprm(i)) fout<<i<<endl; }*/ int end=0; for(int i1=0;i1<=9&&!end;++i1){ for(int i2=0;i2<=9&&!end;++i2){ for(int i3=0;i3<=9&&!end;++i3){ for(int i4=0;i4<=9&&!end;++i4){ int s=i4+i3*10+i2*100+i1*1000; int n; if(s>=1000) n=4; else if(s<1000&&s>=100) n=3; else if(s>=10&&s<100) n=2; else n=1; if(n==1){ if(i4>y){ end=1; break; } if(i4==9&&y>=11&&i4>=x){ fout<<"11"<<endl; } if(i4>=x&&isprm(i4)) fout<<i4<<endl; } else if(n==2){ if(i3*100+i4*10+i3>y){ end=1; break; } if((i3*100+i4*10+i3)>=x&&isprm(i3*100+i4*10+i3)) fout<<i3*100+i4*10+i3<<endl; } else if(n==3){ int s3=i2*10000+i3*1000+i4*100+i3*10+i2; if(s3>y){ end=1; break; } if(s3>=x&&isprm(s3)) fout<<s3<<endl; } else if(n==4){ int s4=i1*1000000+i2*100000+i3*10000+i4*1000+i3*100+i2*10+i1; if(s4>y){ end=1; break; } if(s4>=x&&isprm(s4)) fout<<s4<<endl; } } } } } //system("pause"); return 0; }