zoukankan      html  css  js  c++  java
  • 1015. Reversible Primes (20)

    1015. Reversible Primes (20)

    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 < D <= 10), 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
    
     
    C++语言: Codee#22948
    01 #include <cstdio>
    02 #include <cmath>
    03 #include <cstdlib>
    04 #include <cstring>
    05 #include <cctype>
    06 #include <vector>
    07 #include <map>
    08 #include <queue>
    09 #include <list>
    10 #include <stack>
    11 #include <bitset>
    12 #include <set>
    13 #include <fstream>
    14 #include <sstream>
    15 #include <iomanip>
    16 #include <algorithm>
    17 #include <iostream>
    18
    19 using namespace std;
    20
    21 FILE*            fin         = stdin;
    22 FILE*            fout         = stdout;
    23 const int        max_size     = 10086;
    24
    25 int is_prime(int x)
    26 {
    27     if(x == 2)
    28         return 1;
    29     if(x <= 1 || x % 2 == 0)
    30         return 0;
    31     int rg = sqrt((float)x) + 1;
    32     for(int i = 3; i <= rg; i += 2)
    33         if(x % i == 0)
    34             return 0;
    35     return 1;
    36 }
    37
    38 int judge_reverse(int x, int rdx)
    39 {
    40     int rev = 0;
    41     while(x)
    42     {
    43         rev = rev * rdx + x % rdx;
    44         x = x / rdx;
    45     }
    46     return is_prime(rev);
    47 }
    48
    49
    50 int main()
    51 {
    52     int x, rdx;
    53     while(scanf("%d", &x) && x >= 0)
    54     {
    55         scanf("%d", &rdx);
    56         if(is_prime(x) && judge_reverse(x, rdx))
    57             printf("%s\n", "Yes");
    58         else
    59             printf("%s\n", "No");
    60     }
    61
    62     return 0;
    63 }
  • 相关阅读:
    POJ 3259 Wormholes【BellmanFord】
    POJ 2960 SNim【SG函数的应用】
    ZOJ 3578 Matrixdp水题
    HDU 2897 邂逅明下【bash博弈】
    BellmanFord 算法及其优化【转】
    【转】几个Java的网络爬虫
    thinkphp 反字符 去标签 自动加点 去换行 截取字符串 冰糖
    php 二维数组转 json文本 (jquery datagrid 数据格式) 冰糖
    PHP 汉字转拼音(首拼音,所有拼音) 冰糖
    设为首页与加入收藏 兼容firefox 冰糖
  • 原文地址:https://www.cnblogs.com/invisible/p/2198626.html
Copyright © 2011-2022 走看看