-2
我正試圖找到2個素數總和爲某個整數N,由用戶指定。但我得到MLE爲什麼我的內存超出限制?
def is_prime(n):
if n == 2:
return True
if n%2 == 0 or n <= 1:
return False
sqr = int(n**0.5) + 1
for divisor in range(3, sqr, 2):
if n%divisor == 0:
return False
return True
class Solution:
# @param A : integer
# @return a list of integers
def primesum(self, A):
#Creating the list of prime numbers
h_prime ={}
# Initializing the hash table
# looking for the prime numbers
for i in range (2, long (A)):
if (is_prime(i)):
h_prime [i] = A-i;
# Checking if the compliment is also a prime
#We go through it element by element
for key in h_prime:
if key in h_prime and A-key in h_prime:
my_list = [ key, A-key]
return my_list
你怎麼知道超過了內存限制?您是否收到特定的錯誤訊息? –
您寫的代碼不會執行,因爲您從不調用函數。請給我們您的實際[最小,完整,可驗證的例子](http://stackoverflow.com/help/mcve)。 –
'A'的價值是什麼? –