• 1015 Reversible Primes (20 分)


    A reversible prime in any number system is a prime whose "reverse" in that number system is also a prime. For example in the decimal system 73 is a reversible prime because its reverse 37 is also a prime.

    Now given any two positive integers N (<105) and D (1<D10), you are supposed to tell if N is a reversible prime with radix D.

    Input Specification:

    The input file consists of several test cases. Each case occupies a line which contains two integers N and D. The input is finished by a negative N.

    Output Specification:

    For each test case, print in one line Yes if N is a reversible prime with radix D, or No if not.

    Sample Input:

    73 10
    23 2
    23 10
    -2

    Sample Output:

    Yes
    Yes
    No

    Submit:

    #include <iostream>
    #include <cmath>
    using namespace std;
    
    bool isPrime(int n){//判断是否是质数
        if (n <=1) return false;
        for (int i=2,j = (int)sqrt(n);i<=j;i++) {
            if (n%i == 0) return false;
        }
        return true;
    }
    //目标:质数对应进制的数字反转之后也是质数则输出yes
    int main() {
        int n,d;
        while(scanf("%d", &n) != EOF){
            if (n < 0) break;//负数终止输入
            scanf("%d",&d);
            if(isPrime(n) == false){//n是质数进行转换进制
                printf("No
    ");
                continue;
            }
            int a[100], len = 0;
            do{
                a[len++] = n % d;//进制转换
                n /= d;
            }while (n != 0);
            for(int i = 0; i < len; i++)
                n = n * d + a[i];
            printf(isPrime(n) ? "Yes
    " : "No
    ");
        }
        return 0;
    }
  • 相关阅读:
    [DDCTF 2019]homebrew event loop
    [极客大挑战 2019]FinalSQL
    $[HAOI2008]$硬币购物
    $2018/8/19 = Day5$学习笔记 + 杂题整理
    $2018/8/16 = Day2$学习笔记$+$杂题整理
    [NOIp2009] $Hankson$の趣味题
    2018清北学堂夏日培训游记
    2.数组的声明和创建
    1.什么是数组?
    15.递归
  • 原文地址:https://www.cnblogs.com/cgy-home/p/15215914.html
Copyright © 2020-2023  润新知