算法题练习系列之(六):数素数
来源:互联网 发布:虚拟机上ubuntu屏幕小 编辑:程序博客网 时间:2024/05/17 07:52
--------------------------------------------------------------------------------------------------------------------------------------------------------
时间限制:1秒 空间限制:32768K 代码长度限制 100 KB
--------------------------------------------------------------------------------------------------------------------------------------------------------
题目描述
令Pi表示第i个素数。现任给两个正整数M <= N <= 10000,请输出PM到PN的所有素数。
输入描述:
输入在一行中给出M和N,其间以空格分隔。
输出描述:
输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。
输入例子:
5 27
输出例子:
11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8997 101 103
--------------------------------------------------------------------------------------------------------------------------------------------------------
实现思路:
(1).首先需要判断一个数是不是素数,尽量减少循环次数;
(2).找到从第m到第n个素数,还是需要从第一个开始找,一直找到第n个,然后将前面部分去掉,以及输出进行格式化。
--------------------------------------------------------------------------------------------------------------------------------------------------------
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); while(scan.hasNext()){ int m = scan.nextInt(); int n = scan.nextInt(); int count = 0,tag = 0; for (int i = 2;i<Integer.MAX_VALUE ; i++) { if(isPrimeNumber(i)){ count++; if(count >= m && count <= n){ tag++; System.out.print(i); if(tag == 10){ System.out.println(); tag = 0; }else if(tag != 10 && count < n){ System.out.print(" "); } } } if(count > n){ break; } } } } public static boolean isPrimeNumber(int num){ if(num == 2 || num == 3){ return true; } if(num % 2 == 0){ return false; } for (int i = 3; i < Math.sqrt(num)+1; i=i+2) { if(num % i == 0){ return false; } } return true; }}
- 算法题练习系列之(六):数素数
- C++练习之 素数系列(判断单个数是否为素数,输出一定范围的素数,循环判断素数)
- 算法题练习系列之(十六): 组个最小数
- 初试牛客网PAT练习之数素数
- 算法题练习系列之(一):守形数
- 算法题练习系列之(二):矩阵最大值
- 算法题练习系列之(三):成绩排序
- 算法题练习系列之(五):数字分类
- 算法题练习系列之(七):福尔摩斯的约会
- 算法题练习系列之(八):德才论
- 算法题练习系列之(九):部分A+B
- 算法题练习系列之(十):A除以B
- 算法题练习系列之(十一):锤子剪刀布
- 算法题练习系列之(十二): 数字黑洞
- 算法题练习系列之(十三): 月饼
- 算法题练习系列之(十四): 个位数统计
- 算法题练习系列之(十七): 科学计数法
- 算法题练习系列之(十八): 反转链表
- 多重继承关系的初始化顺序
- 题目六 子串和
- 新标签border-radius和opacity兼容各种浏览的处理办法
- CRC校验
- Centos 7.3 Install ffmpeg 3.1
- 算法题练习系列之(六):数素数
- 深入浅出: 大小端模式
- bzoj1853: [Scoi2010]幸运数字
- 二面角自适应的loop细分
- python实现决策树分类(二)
- 怎么上Google看YouTube国外网站?
- 根据IP获取对方机器的操作系统方案
- Flash Builder 4.7 破解版安装教程及资源
- IntelliJ Idea 2017 免费激活方法