CCF NOI1142 质数
来源:互联网 发布:android eventbus源码 编辑:程序博客网 时间:2024/06/15 09:51
问题链接:CCF NOI1142 质数。
时间限制: 1000 ms 空间限制: 262144 KB
题目描述
定义质数为因数只有1和其本身的数,对于n组询问,试判断每个数是否为质数。
输入
读入第一行一个正整数n,表示有n组询问。
接下来n行,每行一个正整数m,表示询问m是否为质数,是则输出“yes”,否则输出“no”。
输出
n行,每行一个字符串,代表答案。
样例输入
3
1
17
51
样例输出
no
yes
no
数据范围限制
n≤10^3,1<m≤10^10。
提示
问题分析
这是一个数论中的素性判定问题。
数据量比较少,就用试除法来实现。
程序说明
(略)
要点详解
- 使用宏定义可以使得代码可阅读性增强。
- 数据少时,用试除法进行素性判定,时间上还可以接受。
- 要根据题意指定的数据范围选用类型。
参考链接:(略)。
100分通过的C语言程序:
#include <stdio.h>#include <math.h>int isprime(long n){ if(n == 1) return 0; else if(n == 3) return 1; else { long temp, i; temp = n % 6; if(temp != 1 && temp != 5) return 0; temp = sqrt(n); for(i=3; i<=temp; i+=2) if(n % i == 0) return 0; return 1; }}int main(void){ int n; long m; scanf("%d", &n); while(n--) { scanf("%ld", &m); if(isprime(m)) printf("yes\n"); else printf("no\n"); } return 0;}
0 0
- CCF NOI1142 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- 质数
- Linux运维笔记-文档总结-ldap网络帐号
- 从输入URL到页面加载完成的过程详解
- C++类、对象等的基本概念
- 今天遇到这样一个面试题,在此记录一下
- codeforces 306C White, Black and White Again
- CCF NOI1142 质数
- 小菜鸟学习SpringMVC(一)
- 库(lib)与jar包有什么区别啊?
- 数据库系统概论学习攻略3
- 九度1013:开门人和关门人(优先队列)
- 文件上传和下载-ServletFileUpload
- 《Cracking the Coding Interview程序员面试金典》----数字发音
- JAVA中2.0-1.1不是0.9的问题
- C++作业5