繁体   English   中英

Python 3 pow()/ **超时

[英]Python 3 pow() / ** timing out

我正在从Euler项目(#188)遇到问题,遇到了一堵墙。 问题的规格如下:

在此处输入图片说明 我在python中的解决方案如下:

Q = input()
List1 = []
List2 = []
Answers = []
for i in range(int(Q)):
    List1.append(input())
    List2.append(List1[i].split(" "))
    for j in range(int(List2[i][1])):
        List2[i][0] = int(List2[i][0]) ** int(List2[i][0])
    Answers.append(int(List2[i][0]) % int(List2[i][2]))
for k in range(len(Answers)):
    print(Answers[k])

它适用于较小的输入,但是一旦取幂很大,该程序就会运行很长时间,以至于出现超时错误。 有什么办法可以解决python 3的幂运算效率低下的问题,还是我做错了其他事情? 任何帮助表示赞赏!

涉及的数字太大。 您正在尝试强行解决该问题,该问题将不起作用-涉及到的一些数字实际上可能占用了TB的空间-甚至内存太大,以致于无法在可观察的宇宙中容纳。 Python无法帮助您; 有一些涉及更智能数学的答案。 尝试打印一些幂运算结果-例如,三的幂。 看看其余的。 可能会有一些重复或模式。 遵循并概括这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM