本地过洛谷CE
查看原帖
本地过洛谷CE
672044
Graph_Theory楼主2023/10/1 19:58
#include <bits/stdc++.h>
using namespace std;
int pri[10000000]={2,2};
int l,r;
bool isprim(int x)
{
	if(pri[x]!=0) return (pri[x]==1?1:0);
	if(x==2) return 1;
	for(int i=2;i*i<=x;i++)
	{
		if(x%i==0)
		{
			for(int i=1;i*x<r;i++)
			{
				pri[i*x]=2;
			}
			return 0;
		}
	}
	pri[x]=1;
	return 1;
}
int huiwen(long long x){
	long long sum=0,t=x;
	while(t)
	{
		sum=sum*10+t%10;
		t/=10;
	}
	return x==sum;
}
int main()
{
	cin>>l>>r;
	if(l%2==0) l++;
	for(int i=l;i<=r;i+=2)
	{
		if(isprim(i)&&huiwen(i)) cout<<i<<endl;
	}
	return 0;
}
2023/10/1 19:58
加载中...