用户:HJS_落雪查看:0 回复:2 评论:0 创建时间:2019-07-20T09:44:17
回文质数——一种前后一样,且是质数的数叫回文质数,如:101
那么请问各位大佬,编程猫里回文质数怎么求?
#include <bits/stdc++.h> using namespace std; int huiwen(int num) { long long sum=0,temp=num; while(num) { sum=sum*10+num%10; num/=10; } if(temp==sum) return 1; else return 0; } int hwlength(int k) { int a[10],i=0; while (k>0) { a[i]=k%10; k/=10; i++; } return (i); } int prime(int num) { if(num ==2|| num==3 ) return 1 ; if(num %6!= 1&&num %6!= 5) return 0 ; int tmp =sqrt( num); for(int i= 5;i <=tmp; i+=6 ) if(num %i== 0||num %(i+ 2)==0 ) return 0 ; return 1 ; } int main() { int a,b,i; cin>>a>>b; for (i=a; i<=b; i++) { if ((i%2==0&&i!=2) || (i%5==0&&i!=5)) continue; if (hwlength(i)%2==0&&i!=11) continue; if (huiwen(i) && prime(i)) { cout<<i<<endl; } else { continue; } } return 0; } 自己翻译成IDE格式
点赞0
评论