loginof @ 2023-12-09 14:14:14
#include<bits/stdc++.h>
using namespace std;
int arr(int y, int k=1)
{
for(int i=2;i*i<=y;i++)
{
if(y%i==0)
{
k=0;
break;
}
}
if(k==0) return 0;
else return 1;
}
int main()
{
int a,b;
cin>>a>>b;
int c,w=0;
for(int i=a;i<=b;i++)
{
c=0;
if(arr(i)==1)
{
for(int k=1;k<=i;k*=10)
{
w=(i/k)%10;
c=c*10+w;
}
}
if(c==i&&arr(i)==1)
{
cout<<i<<"\n";
}
}
return 0;
}
by _Supernova @ 2023-12-09 14:39:47
思路有问题。 代码附上。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <bits/stdc++.h>
using namespace std;
bool son(int a) {
int i;
bool b = true;
for (i = 2;i < a; i++) {
if ((a % i ) == 0) {
b = false;
break;
}
}
return b;
}
bool strrevequal(int a) {
int b, d;
b = 0;
d = a;
bool c;
while (a > 0) {
b = b * 10 + (a % 10);
a /= 10;
}
c = (d == b) ? true : false;
return c;
}
main()
{
int start, end;
scanf("%d%d", &start, &end);
int i;
for (i = start; i <= end; i++) {
if (son(i) == true && strrevequal(i) == true) {
printf("%d\n", i);
}
}
}
by loginof @ 2023-12-21 16:06:45
@XX_Traveller_XX 大佬啊,只有33分
3 4 5 7 8 9 TLE
!