Project Euler #7: 10001st prime

  • + 0 comments

    Python 3:

    def isPrime(lim):
        prime = [True] * (lim + 1)
        prime[0] = prime[1] = False
        for i in range(2, lim//2 + 1):
            if prime[i]:
                for j in range(i*i, lim+1,i):
                    prime[j] = False
            
        primeNumber=[]
        for i in range(2,lim+1):
            if prime[i]:
                primeNumber.append(i)
        return primeNumber
        
    LIM=10**6 
    primes = isPrime(LIM)
    
    t = int(input().strip())
    for a0 in range(t):
        n = int(input().strip())
        print(primes[n-1])