leetcode之Count Primes(204)

題目:

統計所有小於非負整數 的質數的數量。

示例:

輸入: 10
輸出: 4
解釋: 小於 10 的質數一共有 4 個, 它們是 2, 3, 5, 7 。

python代碼:

class Solution:
    def countPrimes(self, n):
        if n < 3:
            return 0
        res = [1] * n
        res[0] = res[1] = 0
        for i in range(2, int(n**0.5)+1):
            for j in range(2*i, n, i):
                res[j] = 0
        return sum(res)
                

心得:此種方法即素數篩選法,簡單高效,關於素數篩選法可以點擊這裏查看。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章