PAT1015
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.
比如在小数系统中73是一个反素数,因为37也是素数。
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.
现在给出任意两个正整数N和D,要求你写出N的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
判断N是不是素数,然后将N转换成D进制的数,然后翻转,然后转成10进制,然后判断结果和N是不是都是素数。
如23 2
转换成2进制是10111
反转是11101
转换成十进制是29
因为29和23都是素数,所以输出yes
#include<cstdio>
#include<cstdlib>
#include<iostream>
#include<algorithm> using namespace std; //判读是不是素数,是返回1,不是返回0
int isSu(int number)
{
if(number < )
return ;
for (int i = ; i*i <= number; i++)
{
if(number%i == )
return ;
}
return ;
} //将一个整数转换成任意进制,,逆序之后转换成10进制返回
int change(int a,int d)
{
int result=;
int q=;
int jinzhi[];
while (a>)
{
jinzhi[q] = a%d;
a /= d;
q++;
}
int dishu = ;
for (int i = q-; i >= ; i--)
{
result += jinzhi[i]*dishu;
dishu*=d;
}
return result;
} int main()
{
int n,d;
while (true)
{
cin>>n;
if(n<)
break; cin>>d; if(isSu(n) && isSu(change(n,d)))
cout<<"Yes"<<endl;
else
cout<<"No"<<endl;
}
return ;
}
两点值得说明的,素数的判断没有用sqrt()而是用了i*i,还有就是我第一次错在,1不是素数上面了,其他都特别简单
PAT1015的更多相关文章
- PAT1015. Reversible Primes
//题的理解是n在基数b中的的表示中,正序和逆序值都是素数,但是其实可直接判断n,因为n在b中的正常序列值就是再换成十进制就是n,但是不A:不知道为什么 用笨方法,先把n展开成b进制,正常计算其实是翻 ...
- PAT1015—— 德才论
宋代史学家司马光在<资治通鉴>中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人.凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人 ...
- 从零单排PAT1015,1016,1017,1018
1015德才论 题目要求: 输入格式: 输入第1行给出3个正整数,分别为:N(<=105),即考生总数.L(>=60).为录取最低分数线,即德分和才分均不低于L的考生才有资格被考虑录取:H ...
- pat1015. Reversible Primes (20)
1015. Reversible Primes (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue A r ...
- PAT-1015 Reversible Primes (20 分) 进制转换+质数
A reversible prime in any number system is a prime whose "reverse" in that number system i ...
随机推荐
- python [1:3]
Python下标是以0开始的x[1:3]表示返回集合中下标1至3(不包括3)的元素集合x[:3] 表示返回从开始到下标3(不包括3)的元素集合x[3:]表示返回从下标3到结束的元素集合X[:]表示返回 ...
- yali项目的slider
// 调用 var s41 = new slider({ target : '#slider411', titleActiveClass : 'j-active', itemActiveClass : ...
- iOS 打包上传AppStore相关(1)-相关证书配置
最近一个老项目需要更新迭代,一个新的项目需要上线.有一些自己出现的BUG,也有一些没搞懂到处翻资料的问题.在此想做一个总结,写一下总体步骤,尽可能的详细一些,以及自己的一些理解.有很多步骤因为我们查阅 ...
- finally语句包含return的情况
结论:1.不管有木有出现异常,finally块中代码都会执行:2.当try和catch中有return时,finally仍然会执行:3.finally是在return后面的表达式运算后执行的(此时并没 ...
- tomcat各目录(文件)作用
以tomcat7.0.50为例,主目录下有bin,conf,lib,logs,temp,webapps,work 7个文件夹 bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结 ...
- Tarjan算法求解无向连通图的割点、割边、点双连通分量和边双连通分量的模板
历时好几天,终于完工了! 支持无向图四种功能:1.割点的求解 2.割边的求解 3.点双连通分量的求解 4.边双连通分量的求解 全部支持重边!!!!全部支持重边!!!!全部支持重边!!!! 测试数据: ...
- javascript 如何正确使用getElementById,getElementsByName(), and getElementsByTagName()
WEB标准下可以通过getElementById(), getElementsByName(), and getElementsByTagName()访问DOCUMENT中的任一个标签. (1)get ...
- INI文件的写入与读取
INI文件的写入与读取 [节名] '[]中的节名对应此API的第一参数 Name=内容 'Nmae对应此API的第二参数 API的第三参数是没有取到匹配内容时返回的字符串; ...
- 如何在MFC中启动其它的(.exe)可执行文件
ShellExecute(NULL, "open", "http://www.sina.com.cn", NULL, NULL, SW_SH ...
- YII2 请求(request)
请求 一个应用的请求是用 yii\web\Request 对象来表示的,该对象提供了诸如 请求参数(译者注:通常是GET参数或者POST参数).HTTP头.cookies等信息. 默认情况下,对于一个 ...