【1015】Reversible Primes (20 分)

简介: 【1015】Reversible Primes (20 分)【1015】Reversible Primes (20 分)
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#include<algorithm>  
#include<map>
#include<vector>
#include<queue> 
using namespace std;  
//题大意:判断某数若是素数,其在某进制下反转后是否为素数
//key:判断素数,进制转换,逆序
//判断n是否为素数
bool isPrime(int n){ 
  if(n<=1) return false;
  int sqr=(int)sqrt(1.0*n);
  for(int i=2 ;i<=sqr; i++){
    if(n%i == 0) return false;
  }
  return true;
}
int d[111];
int main(){   
     int n,radix;
   while(scanf("%d",&n) != EOF ){
     if(n<0) break;  //当n是负数时,退出循环
     scanf("%d",&radix);
     if(isPrime(n) == false ){  //n不是素数,输出No,结束算法
       printf("No\n");
     }else{  //n是素数,判断n在radix进制下的逆序是否为素数
       int len=0;
       do{    //进行转换
         d[len++]=n%radix;
         n/=radix;
       }while(n!= 0);
       for(int i=0; i<len ; i++){  //按!!逆序!!转换机制
         n=n*radix +d[i];  
       }
       if(isPrime(n) == true)  printf("Yes\n");  //逆序是素数
       else printf("No\n");
     }
   }
    return 0;   
}
相关文章
|
测试技术
LeetCode 204. Count Primes
统计所有小于非负整数 n 的质数的数量。
50 0
LeetCode 204. Count Primes
PTA 7-4 素数等差数列 (20 分)
2004 年,陶哲轩(Terence Tao)和本·格林(Ben Green)证明了:对于任意大的 n,均存在 n 项全由素数组成的等差数列。
118 0
PTA 7-4 最近的斐波那契数 (20 分)
斐波那契数列 F n ​ 的定义为:对 n≥0 有 F n+2 ​ =F n+1 ​ +F n ​ ,初始值为 F 0 ​ =0 和 F 1 ​ =1。
120 0
PTA 1091 N-自守数 (15 分)
如果某个数 K 的平方乘以 N 以后,结果的末尾几位数等于 K,那么就称这个数为“N-自守数”。
138 0
PTA 1056 组合数的和 (15 分)
给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。
123 0
h0125. 求sum(2) (15 分)
h0125. 求sum(2) (15 分)
62 0
7-49 判断素数 (10 分)
7-49 判断素数 (10 分)
91 0
PTA 7-80 水仙花数 (20分)
PTA 7-80 水仙花数 (20分)
368 0