HDOJ 2138 How many prime numbers
来源:互联网 发布:数据字典表设计 编辑:程序博客网 时间:2024/05/16 16:09
HDACM 2138
注意 不要用 j*j<=num 去循环,用j<=Math.sqrt(num)去循环,因为j*j是需要时间去计算的,会超时。
import java.util.Scanner;public class Main{ public static void main(String[] args) { int next[] = new int[1000001]; boolean isPirme[] = new boolean[1000000]; for (int i = 2; i < isPirme.length; i++) { isPirme[i]=true; } int k = 0; for (int i = 2; i < isPirme.length; i++) { if (isPirme[i]) { next[k++] = i; for (int j = i*2; j < isPirme.length; j += i) { isPirme[j] = false; } } }// System.out.println(Integer.MAX_VALUE); Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int n = sc.nextInt(); int count = 0; for (int i = 0; i < n; i++) { int num = sc.nextInt(); if (num>=1000000) { k=1; int j = 2; int m = (int)Math.sqrt(num); for (; j <= m ; j=next[k++]) { if (num%j==0) { break; } } if (j>m) { count++; } }else{ if (isPirme[num]) { count++; } } } System.out.println(count); } sc.close(); }}
阅读全文
0 0
- HDOJ 2138-How many prime numbers
- HDOJ 2138 How many prime numbers
- HDOJ题目2138 How many prime numbers(水题)
- HDOJ 2138 How many prime numbers(暴力,有坑点)
- HDOJ-2138(How many prime numbers)(素数判定)
- hdoj--2138--How many prime numbers(暴力模拟)
- HDOJ P2138 How many prime numbers
- How many prime numbers 2138
- 2138 How many prime numbers
- How many prime numbers
- How many prime numbers
- How many prime numbers
- How many prime numbers
- How many prime numbers
- How many prime numbers
- HDU-2138 How many prime numbers
- hdu 2138 How many prime numbers(miller_rabin?)
- HDU 2138 How many prime numbers
- Idea搭建maven项目
- Qt 右键菜单
- 盘点 2017 全球八大数据泄露案件,刷新你的认知
- 指数和对数的公式总结
- [Unity]更改游戏鼠标样式
- HDOJ 2138 How many prime numbers
- 使用libjpeg-turbo库中兼容的libjpeg库解压一张jpg并缩放压缩保存到文件
- LFM
- Kali配置ssh服务
- Docker mysql 把数据存储在本地目录
- 山东省第十五届软件设计大赛圆满落幕
- Avid.Metasync.v22.1-ISO 1CD(音视频后期制作)
- 三状态进程模型
- 《CSS3实战》文本阴影:text-shadow