1015 Reversible Primes (20 分) 【难度: 一般 / 知识点: 进制转换 判断质数】
2023-09-11 14:15:52 时间
https://pintia.cn/problem-sets/994805342720868352/problems/994805495863296000
#include<bits/stdc++.h>
using namespace std;
int a,b;
bool check(int a,int b)
{
string s;
int sum1=a,sum2=0;
while(a) s+=to_string(a%b),a/=b;
for(int i=0;i<s.size();i++) sum2=sum2*b+s[i]-'0';
if(sum1<=1||sum2<=1) return false;
for(int i=2;i<=sum1/i;i++) if(sum1%i==0) return false;
for(int i=2;i<=sum2/i;i++) if(sum2%i==0) return false;
return true;
}
int main(void)
{
while(cin>>a,a>=0)
{
cin>>b;
if(check(a,b)) puts("Yes");
else puts("No");
}
}