欧拉55项目答案只有3(奇怪!)

2024-05-16 02:52:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在解决这个问题(在http://projecteuler.net/problem=55找到),但我没有把它弄对,所以我寻找答案。 我的代码给出的答案似乎只有3(我的代码:246,右:249)。 如果有人能发现错误就好了。我已经试了三个小时了。。。在

这是我的代码:

from time import time

def rev(x):
    return int(str(x)[::-1])

def Palindrome(x):
    if x == rev(x): return True
    else : return False

def test(x):
    steps = 0

    while True :
        if not Palindrome(x):
            steps += 1
        else:
            return False
        if steps > 50 :
            return True
        x += rev(x)


def main():
    starttime = time()
    lychrel = 0
    for i in range(1,10000):
        if test(i) : lychrel += 1
    elapsed = time() - starttime 
    print "The answer is %d found in %f seconds"  %(lychrel,elapsed) 

if __name__ == "__main__":
    main()

提前谢谢!在


Tags: 答案代码testfalsetruereturniftime