最好一个点RE,求助大佬
查看原帖
最好一个点RE,求助大佬
694969
hcy1117楼主2023/9/11 11:15
#include<bits/stdc++.h>
using namespace std;
long long l,r;
bool f[10000005];
int prim[10000005];
int cnt;
void er()
{
	f[0]=1,f[1]=1;
	for(int i=2;i<=r;i++)
	{
		if(!f[i])prim[++cnt]=i;
		for(int j=1;j<=cnt&&i*prim[j]<=r;j++)
		{
			f[i*prim[j]]=1;
			if(i%prim[j]==0)break;
		}
	}
}
bool pd(int x)
{
	if(f[x])return 0;
	int n=x,ct=0;
	int s[10];
	while(n>0)
	{
		s[++ct]=n%10;
		n/=10;
	}
	int ll=1,rr=ct;
	while(ll<=rr)
	{
		if(s[ll]!=s[rr])
		{
			return 0;
		}
		ll++;rr--;
	}
	return 1;
}
int main()
{
	scanf("%lld%lld",&l,&r);
	er();
	for(int i=l;i<=r;i++)
	{
		if(pd(i))cout<<i<<endl;
	}
}
2023/9/11 11:15
加载中...