Я пытаюсь написать код, который даст мне наибольшую сумму квадрата в матрице.
примечание: значения должны быть рядом друг с другом при формировании формы квадрата.
примечание 2: мне разрешено использовать только функции, импорт чего-либо запрещен в настоящее время в классе, который я принимаю.
Например:
max_mat_square([[1,2.5,3],
[4,-4,6],
[0.5,-1,5]])
[7.5]
Теперь этоэто код, который у меня есть:
def max_mat_square(mat):
sum1 = []
for i in range(len(mat[:-1])):
print i
for j in range(len(mat[1:])):
print 'index' , j
sum1.append([float(mat[i][j]) + float(mat[i+1][j])+float(mat[i][j+1])+float(mat[i+1][j+1])])
return max(sum1)
Теперь код отлично работает с первым примером, однако всякий раз, когда я запускаю эту матрицу, выкидываю ее:
max_mat_square([[1,2], [3,4], [5,6]])
Я получаю 'индекс списка изошибка range ', результат, который я хочу получить для этой матрицы: 18.
Я пробовал много способов исправить ошибку, но ни один из них не сработал.