package Leetcode; /** * 思路:如果a是质数,a的倍数一定不是质数,去掉所有的非质数。 */ import java.util.Arrays; public class countZhishu { // 统计所有小于非负整数 n 的质数的数量。 public static void main(String[] args) { System.out.println(countPrimes(1)); } public static int countPrimes(int n) { int []num=new int[n]; Arrays.fill(num, 1); for(int i=2;i<n;i++){ if(num[i]==1){ for(int j=i*2;j<n;j=j+i){ num[j]=0; } } } int sum=0; for(int i=2;i<n;i++){ sum=sum+num[i]; } return sum; } }