nyoj169-素数
素数
时间限制: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<string.h>
- #include<stdio.h>
- #include<algorithm>
- using namespace std;
- int main()
- {
- int a[1100],i,j;
- memset(a,0,sizeof(a));
- a[1]=1;
- for(i=2;i<=1090;++i) //筛素数法
- {
- for(j=i+i;j<=1090;j+=i)
- a[j]=1;
- }
- int t,x;
- //cin>>t;
- scanf("%d",&t);
- while(t--)
- {
- //cin>>x;
- scanf("%d",&x);
- if(a[x]==0)
- {
- //cout<<x<<endl;
- printf("%d\n",x);
- }
- else
- {
- int max,min;
- for(i=x;;i++)
- {
- if(a[i]==0)
- {
- max=i;
- break;
- }
- }
- for(i=x;;i--)
- {
- if(a[i]==0)
- {
- min=i;
- break;
- }
- }
- if((max-x)<=(x-min))
- //cout<<max<<endl;
- printf("%d\n",max);
- else
- //cout<<min<<endl;
- printf("%d\n",min);
- }
- }
- return 0;
- }
nyoj169-素数的更多相关文章
- Help Hanzo (素数筛+区间枚举)
Help Hanzo 题意:求a~b间素数个数(1 ≤ a ≤ b < 231, b - a ≤ 100000). (全题在文末) 题解: a~b枚举必定TLE,普通打表MLE,真是头疼 ...
- Java 素数 prime numbers-LeetCode 204
Description: Count the number of prime numbers less than a non-negative number, n click to show more ...
- 求解第N个素数
任务 求解第 10,0000.100,0000.1000,0000 ... 个素数(要求精确解). 想法 Sieve of Eratosthenes 学习初等数论的时候曾经学过埃拉托斯特尼筛法(Sie ...
- 使用BitArray判断素数
首先显示1024范围内的所有素数,然后显示输入的数是否是素数.1024 是代码中计算的素数的范围,可以修改.计算平方根,是为了确定一个基数的范围.1024的平方根是32,两个超过32 的数相乘,肯定大 ...
- 查找素数Eratosthenes筛法的mpi程序
思路: 只保留奇数 (1)由输入的整数n确定存储奇数(不包括1)的数组大小: n=(n%2==0)?(n/2-1):((n-1)/2);//n为存储奇数的数组大小,不包括基数1 (2)由数组大小n.进 ...
- Openjudge 1.13-23:区间内的真素数(每日一水)
总时间限制: 1000ms 内存限制: 65536kB 描述 找出正整数 M 和 N 之间(N 不小于 M)的所有真素数.真素数的定义:如果一个正整数 P 为素数,且其反序也为素数,那么 P 就为 ...
- java语言 打印素数实例
//根据定义判断素数---循环n-1次,当n很大时循环n次 public static void main(String[] args) { // TODO Auto-generated ...
- 埃拉托色尼筛法(Sieve of Eratosthenes)求素数。
埃拉托色尼筛法(Sieve of Eratosthenes)是一种用来求所有小于N的素数的方法.从建立一个整数2~N的表着手,寻找i? 的整数,编程实现此算法,并讨论运算时间. 由于是通过删除来实现, ...
- 1.2输出100以内的素数&输出前100个素数。
输出100以内的素数只是一个嵌套,在1.1的基础上添加一层循环,只需要注意从2开始,并且变量需要换一个. #include<stdio.h> int main() { ; ; i < ...
- 素数的平方阶群必为Abel群
定理 设$p$为素数,则$p^2$阶群$G$必为Abel群.
随机推荐
- iOS中UITextView的操作技巧
刚才看了一篇textView实现placeholder的文章,有兴趣的同学们能够看下:__biz=MzA3NzM0NzkxMQ==&mid=211846438&idx=1&sn ...
- ioctl在socket中的一些用法及示例
原文: http://blog.chinaunix.net/uid-20692625-id-3172833.html ----------------------------------------- ...
- jeecg-easypoi-2.0.3版本号公布
EasyPOI是在jeecg的poi模块基础上,继续开发独立出来的,能够说是2.0版本号,EasyPoi封装的目的和jeecg一致,争取让大家write less do more ,在这个思路上eas ...
- IntelliJ IDEA :解决idea导入项目爆红
转:https://my.oschina.net/LevelCoder/blog/1802158 我们在导入一个新的项目到idea的时候,项目明明没有报错,但是会出现出了父包属于正常颜色外,其子包都会 ...
- RecastNavigation(3D场景建模、网格导航)
一.RecastNavigation详解 RecastNavigation定义: RecastNavigation是一个导航寻路工具集,使用邻接的凸多边形集合描述一个3D场景,A*寻路算法使3D场景的 ...
- BZOJ 4488/4052 gcd
思路: 一开始 我是想 对于固定的左端点 从左到右 最多有 log种取值 且单调递减 那不妨倍增预处理+二分GCD在哪变了.. 复杂度O(nlog^2n) gcd最多log种取值.. 好了我们可以 ...
- 2-SAT的小总结(POJ 3683 POJ 3207)
记住几个最重要的公式: xANDy=0<=>(x=>y′)AND(y=>x′) xANDy=1<=>(x′=>x)AND(y′=>y) xORy=0&l ...
- pdf 转成 一张图片
1.maven依赖 <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfb ...
- 通过委托事件实现winform窗体之间的互相刷新
新建winform窗体Form1和Form2; 接下来要通过点击Form2的按钮,实现Form1界面的同步刷新. 先展示一下最终效果: 1.Form1界面如下: 2.点击按钮弹出Form2,界面如下: ...
- # Nginx设置浏览器缓存
配置语法 在location或if段里,来写. 格式 expires 30s; expires 30m; expires 2h; expires 30d; (注意:服务器的日期要准确,如果服务器的日期 ...