zoukankan      html  css  js  c++  java
  • nyoj 169-素数 (打表)

    169-素数


    内存限制:64MB 时间限制:3000ms 特判: No
    通过数:42 提交数:84 难度:1

    题目描述:

    走进世博园某信息通信馆,参观者将获得前所未有的尖端互动体验,一场充满创想和喜悦的信息通信互动体验秀将以全新形式呈现,从观众踏入展馆的第一步起,就将与手持终端密不可分,人类未来梦想的惊喜从参观者的掌上展开。

    在等候区的梦想花园中,参观者便开始了他们奇妙的体验之旅,等待中的游客可利用手机等终端参与互动小游戏,与梦想剧场内的虚拟人物Kr. Kong 进行猜数比赛。当屏幕出现一个整数X时,若你能比Kr. Kong更快的发出最接近它的素数答案,你将会获得一个意想不到的礼物。

    例如:当屏幕出现22时,你的回答应是23;当屏幕出现8时,你的回答应是7;若X本身是素数,则回答X;若最接近X的素数有两个时,则回答大于它的素数。

    输入描述:

    第一行:N   要竞猜的整数个数
    接下来有N行,每行有一个正整数X
    1<=N<=5   1<=X<=1000

    输出描述:

    输出有N行,每行是对应X的最接近它的素数

    样例输入:

    4
    22
    5
    18
    8

    样例输出:

    23
    5
    19
    7

    C/C++   AC:

     1 #include <iostream>
     2 #include <algorithm>
     3 #include <cstring>
     4 #include <cstdio>
     5 #include <cmath>
     6 #include <stack>
     7 #include <set>
     8 #include <map>
     9 #include <queue>
    10 #include <climits>
    11 
    12 using namespace std;
    13 const int MY_MAX = 1010;
    14 int X[MY_MAX], n;
    15 
    16 bool is_prime(int k)
    17 {
    18     if (k <= 1) return false;
    19     for (int i = 2; i <= sqrt(k); ++ i)
    20     {
    21         if (k % i == 0) return false;
    22     }
    23     return true;
    24 }
    25 
    26 void cal_X()
    27 {
    28     for (int i = 1; i <= 1000; ++ i)
    29     {
    30         for (int k = 0; ; ++ k)
    31         {
    32             if (is_prime(i + k))
    33             {
    34                 X[i] = i + k;
    35                 break;
    36             }
    37             else if (is_prime(i - k))
    38             {
    39                 X[i] = i - k;
    40                 break;
    41             }
    42         }
    43     }
    44 }
    45 
    46 int main()
    47 {
    48     cal_X();
    49     cin >> n;
    50     while (n --)
    51     {
    52         int temp;
    53         cin >> temp;
    54         cout << X[temp] <<endl;
    55     }
    56 }
  • 相关阅读:
    iSCSI又称为IPSAN
    文档类型定义DTD
    HDU 2971 Tower
    HDU 1588 Gauss Fibonacci
    URAL 1005 Stone Pile
    URAL 1003 Parity
    URAL 1002 Phone Numbers
    URAL 1007 Code Words
    HDU 3306 Another kind of Fibonacci
    FZU 1683 纪念SlingShot
  • 原文地址:https://www.cnblogs.com/GetcharZp/p/9332400.html
Copyright © 2011-2022 走看看