题解

凌艺樽  •  3个月前


#include<bits/stdc++.h>
#pragma GCC optimize(3)
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
const int N=1e7+10;
const int INF=0x3f3f3f3f;
bool f[N];
int a,b,len=1;//,ans;
bool Palindrome(int x)
{
	int y=x,z=0;
	while(x!=0)
	{
		z=z*10+x%10;
		x/=10;
	}
	return y==z;
}
int main()
{
	IOS;
	f[1]=1;
	for(int i=2;i<=N;i+=len)
	{
		if(i==3)len=2;
		if(f[i]==0)
		{
			for(int j=2*i;j<=N;j+=i)
			{
				f[j]=1;
			}
		}
	}
	cin>>a>>b;
	for(int i=a;i<=b;++i)
	{
		if(f[i]==0 && Palindrome(i))
		{
			cout<<i<<endl;
			//++ans;
		}
	}
	//cout<<ans;
    return 0;
}


评论: