统计所有小于非负整数 n 的质数的数量。
示例:
输入: 10 输出: 4 解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。
class Solution: def countPrimes(self, n: int) -> int: if n<2: return 0; isPrime=[1]*n; # 合数对应0;素数对应1 isPrime[0]=isPrime[1]=0; #埃式筛 for i in range(2,int(n**0.5)+1): if isPrime[i]: isPrime[i*i:n:i]=[0]*((n-1-i*i)//i+1);#个数 return sum(isPrime);