我正在用Python 2.7.13编写以下代码来解决这个问题: 访问https://projecteuler.net/problem=11
这是我的密码:
from numpy import *
from tab import tab
def euler011(tab):
dim = len(tab)
grid = array(tab)
r, r3 = range(dim), range(dim-3)
m1 = max(prod(grid[i,j:j+4]) for i in r for j in r3)
m2 = max(prod(grid[i:i+4,j]) for i in r3 for j in r)
m3 = max(prod(diag(grid[i:i+4,j:j+4])) for i in r3 for j in r3)
m4 = max(prod(diag(grid[i:i+4,j+4:j:-1])) for i in r3 for j in r3)
return max(m1,m2,m3,m4)
print(euler011(tab))
当我运行此代码时,会收到一条错误消息:
IndexError: Too many indices for array
你可能有导入标签的问题,当我自己启动数组我没有得到任何错误,但答案是错误的
使用您的方法(导入选项卡),tab.py应该如下所示:
相关问题 更多 >
编程相关推荐