1. 程式人生 > >【題解】洛谷P1217[USACO1.5]迴文質數 列舉

【題解】洛谷P1217[USACO1.5]迴文質數 列舉

題目連結

#include <bits/stdc++.h>
using namespace std;
long long sushu(long long x,long long y){
    int i,i1,i2,i3,i4,flag=0;
    long long c,palindrom;
    if((x==5)&&(y>=11)) cout<<"5"<<endl<<"7"<<endl<<"11"<<endl;
    if((x==7)&&(y>=11
)) cout<<"7"<<endl<<"11"<<endl; for(i=10;i<=10000;i++){ i1=i/1000; i2=(i/100)%10; i3=(i/10)%10; i4=i%10; if(i<100) palindrom=i3*100+i4*10+i3; else if(i<1000) palindrom=i2*10000+i3*1000+i4*100+i3*10+i2; else palindrom=i1*1000000+i2*100000+i3*10000+i4*1000+i3*100+i2*10
+i1; if((x<=palindrom)&&(y>=palindrom)){ flag=0; for(c=2;c<=sqrt(palindrom);c++){ if(palindrom%c==0){ flag=1; break; } } if(flag==0) cout<<palindrom<<endl; } } } int
main(){ long long a,b; cin>>a>>b; sushu(a,b); return 0; }