简单的素数问题(2008年北京航空航天大学计算机研究生机试真题)
来源:互联网 发布:几经褪色的记录 知乎 编辑:程序博客网 时间:2024/05/17 23:42
- 题目描述:
输入一个整数n(2<=n<=10000),要求输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数,如果没有则输出-1。
- 输入:
输入有多组数据。
每组一行,输入n。
- 输出:
输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数(素数之间用空格隔开,最后一个素数后面没有空格),如果没有则输出-1。
- 样例输入:
100
- 样例输出:
11 31 41 61 71
代码:
#include <stdio.h>#include <math.h>#define bool _Bool#define true 1#define false 0#define MAX 10001bool prim[MAX];void init(){ int i; for(i = 0;i <= MAX;i++) if(i % 2 == 1) prim[i] = true; else prim[i] = false;}void select(){ int i,j; int n = sqrt(MAX); for(i = 3;i <= n;i += 2) { if(prim[i]) { for(j = i + i;j < MAX;j += i) prim[j] = false; } }}int main(){ int n; int i; init(); select(); while(scanf("%d",&n) != EOF) { if(n < 11) printf("-1"); else { printf("11"); for(i = 12;i < n;i++) { if(i % 10 == 1 && prim[i] == true) printf(" %d",i); } } printf("\n"); } return 0;}
详细看http://blog.csdn.net/yming0221/article/details/6087559
- 简单的素数问题(2008年北京航空航天大学计算机研究生机试真题)
- 题目1163:素数 2008年北京航空航天大学计算机研究生机试真题
- 题目1163:素数(2008年北京航空航天大学计算机研究生机试真题)
- 2008--2009年北京航空航天大学计算机研究生机试真题
- 九度机试 题目1165:字符串匹配 2008年北京航空航天大学计算机研究生机试真题
- 2008年清华大学计算机研究生机试真题
- 2008年清华大学计算机研究生机试真题
- 2006年清华大学计算机研究生机试真题
- 2010年清华大学计算机研究生机试真题
- 2000年清华大学计算机研究生机试真题
- 2012年清华大学计算机研究生机试真题
- 2000年清华大学计算机研究生机试真题
- 2006年清华大学计算机研究生机试真题
- 2009年清华大学计算机研究生机试真题
- 2010年清华大学计算机研究生机试真题
- 2011年清华大学计算机研究生机试真题
- 题目1080:进制转换(2008年清华大学计算机研究生机试真题)ps:用java太简单了
- 2011年清华大学计算机研究生机试真题之四
- windows下git bash显示中文
- ImageMagick的linux安装详解
- poj2004
- Java中调用Windows API的方法
- 华为C++/MFC面试题(附上个人答案,不当之处请指正)
- 简单的素数问题(2008年北京航空航天大学计算机研究生机试真题)
- MyEclipse集成SVN
- S3C2416 Linux2.6.21 驱动移植--添加UART3 及波特率设置bug消除
- 显存相关概念
- ubuntu 编译安装Erlang R15B 及R15B observer工具
- 图和网络分析重要库简介
- Intent传递方式
- gamelogic scheduleUpdate
- C++运算符优先级