CCF___NOI @ 2024-10-21 21:59:15
#include<bits/stdc++.h>
using namespace std;
long long n,m,s,a[1000001];
bool huiwen(long long n){
long long t,ans;
t=n;
while(t){
ans=ans*10+t%10;
t/=10;
}
if(ans==n) return 1;
else return 0;
}
bool zhishu(int a){
for(int i=2;i*i<=a;i++)
{
if(a%i==0)
return 0;
}
return 1;
}
int main(){
cin>>n>>m;
for(int i=n;i<=m;i++){
if(huiwen(i))
a[++s]=i;
}
for(int i=1;i<=s;i++){
if(zhishu(a[i])) cout<<a[i]<<'\n';
}
return 0;
}
by csZJY @ 2024-10-21 22:06:07
复杂度O(m-n)会TLE,题目里给了如何生成回文数,可以优化一下
by CCF___NOI @ 2024-10-22 23:24:06
@csZJY 是WA 不是T
by __LIAM_olivers__ @ 2024-10-25 15:29:08
#include<bits/stdc++.h>
using namespace std;
int zs(int n){
int f=0;
for(int j=2;j*j<=n;j++){
if(n%j==0){
f=1;
break;
}
}
if(f==1){
return 0;
}
else {
return 1;
}
}
int hw(int n){
int a[10];
int i=-1;
while(n){
a[++i]=n%10;
n/=10;
}
for(int j=0;i>=j;i--,j++){
if(a[i]!=a[j])return 0;
}
return 1;
}
int main(){
int a,b;
cin>>a>>b;
if(a%2==0)a++;
for(int i=a;i<=b;i+=2){
if(zs(i) && hw(i)){
cout<<i<<endl;
}
}
return 0;
}
66分代码,其实我也不会