#include<bits/stdc++.h>
using namespace std;
bool isprime(int a){
if(a<=1) return false;
if(a==2) return true;
for(int i=2;i<=sqrt(a);i++){
if(a%i==0) return false;
}
return true;
}
int getnum(int a,int d){
vector<int> ppp;
while(a!=0){
ppp.push_back(a%d);
a/=d;
}
int ans=0;
for(int i=0;i<ppp.size();i++){
ans+=ppp[i]*pow(d,ppp.size()-i-1);
}
return ans;
}
int main()
{
while(1){
int n;cin>>n;
if(n<0) break;
else{
int d;cin>>d;
if(isprime(n)==false){
cout<<"No"<<endl;
}else{
int temp;
temp=getnum(n,d);
if(isprime(temp)==true){
cout<<"Yes"<<endl;
}else{
cout<<"No"<<endl;
}
}
}
}
return 0;
}
1015 Reversible Primes
猜你喜欢
转载自blog.csdn.net/csg3140100993/article/details/82053957
今日推荐
周排行