Back to Leetcode Go

204. Count Primes

website/content/ChapterFour/0200~0299/0204.Count-Primes.md

1.7.11.1 KB
Original Source

204. Count Primes

题目

Count the number of prime numbers less than a non-negative number, n.

Example:

Input: 10
Output: 4
Explanation: There are 4 prime numbers less than 10, they are 2, 3, 5, 7.

题目大意

统计所有小于非负整数 n 的质数的数量。

解题思路

  • 给出一个数字 n,要求输出小于 n 的所有素数的个数总和。简单题。

代码

go

package leetcode

func countPrimes(n int) int {
	isNotPrime := make([]bool, n)
	for i := 2; i*i < n; i++ {
		if isNotPrime[i] {
			continue
		}
		for j := i * i; j < n; j = j + i {
			isNotPrime[j] = true
		}
	}
	count := 0
	for i := 2; i < n; i++ {
		if !isNotPrime[i] {
			count++
		}
	}
	return count
}


<div style="display: flex;justify-content: space-between;align-items: center;"> <p><a href="https://books.halfrost.com/leetcode/ChapterFour/0200~0299/0203.Remove-Linked-List-Elements/">⬅️上一页</a></p> <p><a href="https://books.halfrost.com/leetcode/ChapterFour/0200~0299/0205.Isomorphic-Strings/">下一页➡️</a></p> </div>