• Openjudge 1.13-23:区间内的真素数


    总时间限制: 
    1000ms
     
    内存限制: 
    65536kB
    描述

    找出正整数 M 和 N 之间(N 不小于 M)的所有真素数。

    真素数的定义:如果一个正整数 P 为素数,且其反序也为素数,那么 P 就为真素数。
    例如,11,13 均为真素数,因为11的反序还是为11,13 的反序为 31 也为素数。

    输入
    输入两个数 M 和 N,空格间隔,1 <= M <= N <= 100000。
    输出
    按从小到大输出 M 和 N 之间(包括 M 和 N )的真素数,逗号间隔。如果之间没有真素数,则输出 No。
    样例输入
    10 35
    样例输出
    11,13,17,31
    来源
    元培-From Whf
    一如既往的发一道水题,只有水题能捡起自信。。
    #include <cstring>
    #include <cstdio>
    #include <cmath>
    using namespace std;
    
    char s[11412];
    int n,m,i,j;
    int pd(int k)
    {
        for(j=2;j<=sqrt(k);++j) if(k%j==0) return 0;
        return 1;
    }
    int zc(int w)
    {
        int h=0;
        sprintf(s,"%d",w);
        for(int l=strlen(s)-1;l>=0;l--)
        {
            if(l==strlen(s)-1) h=int(s[l]-48);
            else h=h*10+int(s[l]-48);
        }
        if(pd(h)) return 1;
    }
    int main()
    {
        bool flag=false;
        scanf("%d%d",&n,&m);
        for(i=n;i<=m;++i)
        {
            if(pd(i))
            {
                if(zc(i))
                {
                    if(!flag)
                    {
                        printf("%d",i);
                        flag=true;
                    }
                    else printf(",%d",i);
                }
            }
        }
        if(!flag) printf("No");
        return 0;
    }
    我们都在命运之湖上荡舟划桨,波浪起伏着而我们无法逃脱孤航。但是假使我们迷失了方向,波浪将指引我们穿越另一天的曙光。
  • 相关阅读:
    get pc name in LAN
    study spring
    android install
    【转】Java:Session详解
    classic problem: producer and consumer
    tomcat install
    验证Monitor.PulseAll功效
    (转)Windows7的图形架构与DX的那点事
    Cannot open your default email folders. The attempt to log on to Microsoft Exchange has failed.
    Monitor.Wait初探(8)
  • 原文地址:https://www.cnblogs.com/ruojisun/p/6246353.html
Copyright © 2020-2023  润新知