0
点赞
收藏
分享

微信扫一扫

PAT.A1015 Reversible Primes

新鲜小饼干 2022-07-14 阅读 23

PAT.A1015 Reversible Primes_十进制

题意

给出整数n和radix,如果n是素数,且n在radix进制下反转后的数在十进制下也是素数,则输出“Yes"; 否则输出“No”。

样例(可复制)

73 10
23 2
23 10
-2
//output

注意点

  1. 注意n=1的情况

#include<bits/stdc++.h>
using namespace std;

bool isprime(int a){
if(a<=1)return false;
int sqr=(int)sqrt(1.0*a);
for(int i=2;i<=sqr;i++)
if(a%i==0)return false;
return true;
}
int main(){
int n,radix;
bool flag1,flag2;
while(true){
cin>>n;
if(n<0)break;
cin>>radix;
flag1=isprime(n);
int num[1000],i=0;
do{
num[i++]=n%radix;
n/=radix;
}while(n>0);
for(int j=0;j<i;j++){
n=n*radix+num[j];
}
flag2=isprime(n);
if(flag1&&flag2)cout<<"Yes\n";
else cout<<"No\n";
}
return 0;
}


举报

相关推荐

0 条评论