HDOJ(HDU) 2161 Primes(素数打表)
2016-05-05 19:24
441 查看
Problem Description
Write a program to read in a list of integers and determine whether or not each number is prime. A number, n, is prime if its only divisors are 1 and n. For this problem, the numbers 1 and 2 are not considered primes.
Input
Each input line contains a single integer. The list of integers is terminated with a number<= 0. You may assume that the input contains at most 250 numbers and each number is less than or equal to 16000.
Output
The output should consists of one line for every number, where each line first lists the problem number, followed by a colon and space, followed by “yes” or “no”.
Sample Input
1
2
3
4
5
17
0
Sample Output
1: no
2: no
3: yes
4: no
5: yes
6: yes
给你一个数,判断它是不是素数,是素数输出**: yes,不是就输出
**: no
注意:1和2要输出no。
还有,判断结束的标志是n<=0.
Write a program to read in a list of integers and determine whether or not each number is prime. A number, n, is prime if its only divisors are 1 and n. For this problem, the numbers 1 and 2 are not considered primes.
Input
Each input line contains a single integer. The list of integers is terminated with a number<= 0. You may assume that the input contains at most 250 numbers and each number is less than or equal to 16000.
Output
The output should consists of one line for every number, where each line first lists the problem number, followed by a colon and space, followed by “yes” or “no”.
Sample Input
1
2
3
4
5
17
0
Sample Output
1: no
2: no
3: yes
4: no
5: yes
6: yes
给你一个数,判断它是不是素数,是素数输出**: yes,不是就输出
**: no
注意:1和2要输出no。
还有,判断结束的标志是n<=0.
import java.util.Arrays; import java.util.Scanner; public class Main{ static boolean db[] = new boolean[16001]; public static void main(String[] args) { prime(); Scanner sc = new Scanner(System.in); int t=0; while(sc.hasNext()){ int n =sc.nextInt(); if(n<=0){ break; } if(db ){ System.out.println((++t)+": yes"); }else{ System.out.println((++t)+": no"); } } } private static void prime() { Arrays.fill(db, true); db[1]=false; db[2]=false; for(int i=2;i<=Math.sqrt(db.length);i++){ for(int j=i+i;j<db.length;j+=i){ if(db[j]){ db[j]=false; } } } } }
相关文章推荐
- HDOJ(HDU) 2161 Primes(素数打表)
- 根据服务端推送过来的数据规则,跳转到对应的控制器(runtime)
- jenkins,Tomcat重启脚本,设置jvm参数之后遇到了一个坑。
- 一个展现java多线程原理的例子
- iOS使用runtime设置字体格式
- 推送时,播放震动声音不停止的代码
- 什么是LUT(LOOK UP TABLE)
- 王坚清华ATF演讲实录
- 智能家居之 手机蓝牙APP:实现与CC2530的数据互传
- 程序员健康指南
- JS中的call()和apply()方法
- linux进程管理子系统简要分析
- Bootstrap使用记录--引入
- hdu4745(区间dp,求最大回文串的长度)
- 每天积累一丢丢(Wed, 5 May 2016)
- acm 头文件及宏定义
- mysql之TIMESTAMP(时间戳)用法详解
- 我的数组类
- 百度地图API之环境搭建
- 搜索