oj 判断一个数是否为对称且不大于五位数的素数

来源:互联网 发布:软件项目成本核算 编辑:程序博客网 时间:2024/04/30 15:52


Description

判断一个数是否为对称且不大于五位数的素数。

Input

输入数据含有不多于50个的正整数(0<n<232)。

Output

对于每个n,如果该数是不大于五位数的对称素数,则输出“Yes”,否则输出“No”。每个判断结果单独列一行。

Sample Input

11 101 272

Sample Output

YesYesNo
<pre class="cpp" name="code">#include <iostream>#include<cmath>using namespace std;bool isPrime(int n){    int i;    if(n!=2&&n%2==0) return false;    for(i=3; i*i<=n; i+=2)        if(n%i==0) return false;    return true;}bool isSym(int n){    if(n<12&&n!=10) return true;    if(n<1000&&n>100&&n/100==n%10) return true;    if(n>10000&&n/1000==n%10*10+n/10%10) return true;    return false;}int main(){    for(int n;cin>>n;)    {        cout<<(n<100000&&isPrime(n)&&isSym(n)?"Yes\n":"No\n");    }    return 0;}

运行结果:
学习心得:这个程序要分两部分来完成.
0 0
原创粉丝点击