Я завершил вопрос от эксперта Л go, который просит вас l oop через массив чисел найти два числа, которые добавляют к целевой сумме. Я пытаюсь понять, почему эта функция не работает без псевдонимов итераторов.
ввод: [3, 5, -4, 8, 11, 1, -1, 6], 10
вывод: [-1, 11]
Это правильное решение:
def twoNumberSum(array, targetSum):
for i in range(len(array) - 1):
firstNum = array[i]
for j in range(i + 1, len(array)):
secondNum = array[j]
if firstNum + secondNum == targetSum:
return [firstNum, secondNum]
return []
и я не понимаю, почему это не работает:
def twoNumberSum(array, targetSum):
for i in range(len(array) - 1):
for j in range(i + 1, len(array)):
if i + j == targetSum:
return [i, j]
return []