您的位置:首页 > 其它

leetcode_204. Count Primes 统计素数

2016-11-07 22:08 423 查看
题目:

Description:

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

题意:

给定数字n,统计小于n的数中所有素数的个数

代码:

class Solution(object):

    

    global Primes

    Primes = []

    

    def isPrimes(self, x) :

        if x < 2 :

            return False

        if x == 2 :

            return True

        if x%2 == 0 :

            return False

        

        sql = int(x**0.5)

        global Primes

        len_P = len(Primes)

        for i in range(len_P) :

            if Primes[i] > (sql+1) :

                break

            if x%(Primes[i]) == 0 :

                return False

        return True

    

    def countPrimes(self, n):

        """

        :type n: int

        :rtype: int

        """

        

        res = 0

        global Primes

        Primes = []

        for x in range(n) :

            if self.isPrimes(x) == True :

                res += 1

                Primes.append(x)

        return res

            

笔记:

这是一道用python写AC不了的题。表示各种思想用python实现,都TLE。

最后还是看了大神的cpp代码才过的:http://blog.csdn.net/sunao2002002/article/details/45583723
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: