Разница по диагонали в PythonPython

Программы на Python
Ответить
Anonymous
 Разница по диагонали в Python

Сообщение Anonymous »

Я работаю над проблемой HackerRank и не понимаю некоторой логики:
if (i == j):
left += a[j]

Вышеупомянутое говорит о том, что если индексы строк/столбцов одинаковы ([1,1], [2,2], [3,3]), добавьте значение, найденное в этих координатах. в список «налево»
Я не понимаю логику приведенного ниже кода. На мой взгляд, это говорит о добавлении значений, найденных в координатах, где индекс строки + индекс столбца = 3 (n-1), но я не думаю, что это правильно. Как будет выглядеть приведенный ниже код?
if (i + j) == (n - 1):
right += a[j]

Ниже приведена функция с примерами входных данных a и n.
a = [[ 1, 2, 3, 4 ],
[ 5, 6, 7, 8 ],
[ 1, 2, 3, 4 ],
[ 5, 6, 7, 9 ]]

n = 4
def xsum(a, n):
left = 0
right = 0
for i in range(0, n):
for j in range(0, n):
if (i == j):
left += a[j]
if (i + j) == (n - 1):
right += a[j]
return (abs(left-right))


Подробнее здесь: https://stackoverflow.com/questions/709 ... -in-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»