素数

时间限制:3000 ms  |  内存限制:65535 KB
难度: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

代码实现:

#include<iostream>
#include<math.h>
using namespace std;
//判断是否是素数,不是素数时返回0,是素数时返回1 
int is_primer(int a)
{
if(a==1)
return 0;
for(int i=2;i<=sqrt(a);i++)
{
if(a%i==0)
return 0; 
}
return 1;

int main()
{
int n;
cin>>n;
while(n--)
{
int a,i,j,m,d1=0,d2=0;
cin>>a;
m=is_primer(a);
if(m==1)
cout<<a<<endl;
if(m==0)//m不是素数 
{
for(i=a;;i++)
{
if(is_primer(i))
break;
d1++;
}
for(j=a;j>=1;j--)
{
if(is_primer(j))
break;
d2++;
}
if(d1<=d2)
cout<<i<<endl;
else
cout<<j<<endl;
}
}
return 0;
}

知识点:素数的判断,for循环的运用
易错点:判断是否为素数的知识点中,是素数返回值为1,不是素数返回值为0,这个小设计为后面的if(is_primer(n))判断提供方便,若为真,则直接输出本身,否则进行距离计算,比较输出。

素数----南阳OJ相关推荐

  1. 南阳oj a+b问题

    #include<iostream> using namespace std; int main () { int a,b; cin>>a>>b; cout< ...

  2. 南阳oj 1的个数

    #include<iostream> #include<math.h> using namespace std; int main () { int t; cin>> ...

  3. 南阳OJ 16 矩形嵌套

    描写叙述 有n个矩形,每个矩形能够用a,b来描写叙述,表示长和宽. 矩形X(a,b)能够嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度). ...

  4. 南阳OJ独木舟上的旅行

     /*独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别. 一条独木舟最多只能乘坐两个人 ...

  5. 南阳oj 语言入门 房间安排

    给大家推荐个靠谱的公众号程序员探索之路,大家一起加油 #include<stdio.h> #include<stdlib.h> #include<algorithm& ...

  6. 南阳oj入门题-A+B Problem

    /** A+B Problem 时间限制:3000 ms | 内存限制:65535 KB 难度:0 描述 此题为练手用题,请大家计算一下a+b的值 输入 输入两个数,a,b 输出 输出a+b的值 样例 ...

  7. 南阳oj入门题-蛇形填数

    /** 蛇形填数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形.例如n=4时方陈为: 10 11 12 1 9 16 ...

  8. 南阳oj入门题-数数

    /** 数数 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 我们平时数数都是喜欢从左向右数的,但是我们的小白同学最近听说德国人数数和我们有些不同,他们正好和我们相反,是从右 ...

  9. 南阳OJ 题目64:小学生算术

    题目信息:题目链接 小学生算术 时间限制:3000 ms  |  内存限制:65535 KB 难度:1 描述 很多小学生在学习加法时,发现"进位"特别容易出错.你的任务是计算两个三 ...

  10. 南阳oj 题目722 数独

    数独 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 数独是一种运用纸.笔进行演算的逻辑游戏.玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行.每一 ...

最新文章

  1. 看完 50000 张专辑封面,AI 设计师开始疯狂输出
  2. 用计算机测出你真实的年龄,一款神奇的App:能够测出你的真实年龄
  3. Jad一个好东西(转载)
  4. C ++ 指针 | 指针的操作_2
  5. Substance PBR Guide
  6. c语言报刊杂志订阅系统,中国报刊杂志大全_报刊大全_报刊杂志订阅
  7. kafka 心跳参数
  8. 作为ACMer,在我最懈怠的时候让我看到了这段话
  9. linux系统的wps办公软件,linux上安装wps办公软件
  10. Android 复杂的列表视图新写法 MultiType (v3.1.0 修订版)
  11. 15.元组(低调的元组,不一样的精彩)
  12. 新浪微博API错误代码大全
  13. IDEA vs VSCode在java开发上的横向对比
  14. netty之微信-IM简介(二)
  15. Android存储子系统
  16. 浅谈八百呼电销系统的基础功能
  17. 焦作市宇华学校2021高考成绩查询,河南2021高考最高分多少分,河南历年高考状元资料...
  18. 手机端html5网页音乐播放,js实现移动端H5页面音乐播放,兼容微信 safari浏览器...
  19. java学习第17天,p183-p190(12/21)
  20. live555 源码架构分析

热门文章

  1. SQL考点之存储过程、存储函数、游标
  2. 零成本、零流量,我是如何空手反套白狼?
  3. 【中级—,android开发入门pdf
  4. matlab从无到有系列(二):矩阵运算基础
  5. 腾讯中层裁员10%,互联网资本进入寒流时代
  6. 用计算机绘制滴定曲线,利用Excel系统绘制酸碱滴定曲线
  7. Java Seckill Module:Seckill interface address hiding
  8. 投票 java_java实现投票程序设计
  9. 《21世纪资本论》阅读摘要
  10. 学计算机要选什么科目,实行新高考后 想学计算机专业怎么选科