1015 Reversible Primes (20分)
分析
打印素数表,判断给定的数以及其在给定进制下的转置数是否为素数
代码
#include<iostream>
using namespace std;
int n, d, nonprime[100010];
int getreverse(int n,int d) {
int s = 0;
while (n != 0) {
s = s * d + n % d;
n /= d;
}
return s;
}
int main() {
for (int i = 2; i * i < 100010; ++i)
for (int j = 2; j * i < 100010; ++j)
nonprime[i * j] = 1;
nonprime[0] = nonprime[1] = 1;
while (true) {
scanf("%d", &n);
if (n < 0)break;
scanf("%d", &d);
if (nonprime[n] || nonprime[getreverse(n, d)])printf("No\n");
else printf("Yes\n");
}
return 0;
}
可逆素数判断算法
本文介绍了一种用于判断给定数及其转置数在特定进制下是否均为素数的算法。通过创建素数表并利用逆序转换函数,该算法能够高效地识别所谓的可逆素数。代码实现采用C++,使用了标准输入输出流,实现了从用户输入中获取数值和进制,然后输出判断结果。
457

被折叠的 条评论
为什么被折叠?



