【题目描述】
求11到n之间(包括n),既是素数又是回文数的整数有多少个。带我去看题目
【输入】
一个大于11小于1000的整数n。
【输出】
11到n之间的素数回文数个数。
【输入样例】
23
【输出样例】
1
【提示】
回文数指左右对称的数,如:292,333。
【通过代码】
#include <bits/stdc++.h> using namespace std; int n,sum; bool isPrime(int _n){for(int i = 2;i * i <= _n;i ++)if(_n % i == 0)return false;return true; } bool isReturn(int _n){char a[10]={},b[10]={};sprintf(a,"%d",_n);int len = strlen(a);for(int i = 0;i < len;i ++)b[len - i - 1] = a[i];return strcmp(a,b) == 0; } int main(){scanf("%d",&n);for(int i = 11;i <= n;i ++)if(isPrime(i) && isReturn(i))sum ++;printf("%d",sum);return 0; }
详细解决方案
1408:素数回文数的个数
热度:71 发布时间:2024-02-10 01:05:54.0