Menu
CoddyTech

Two Sum

Тебе дан список целых чисел и целевое значение. Ровно два числа из списка в сумме дают целевое значение, и твоя задача — указать их позиции.

Возьми nums = [3, 8, 12, 5] и target = 17. Значение 12 находится по индексу 2, а 5 — по индексу 3, и 12 + 5 = 17, поэтому ответ — [2, 3].

Эти два числа должны находиться в разных позициях. В [4, 2, 6] при target = 8 нельзя использовать число 4 дважды; ответ — [1, 2], потому что 2 + 6 = 8. Однако одно и то же значение может встретиться дважды: в [7, 3, 7] при target = 14 ответ — [0, 2].

Напишите функцию с именем twoSum, которая получает массив целых чисел nums и целое число target и возвращает массив из двух индексов [i, j], таких что nums[i] + nums[j] равно target.

Индексы должны указывать на две разные позиции и возвращаться в порядке возрастания (i меньше j). Для каждого входного набора существует ровно одна такая пара.

Ограничения: 2 ≤ nums.length ≤ 10^4, -10^9 ≤ nums[i] ≤ 10^9, -10^9 ≤ target ≤ 10^9.

Функция

twoSum(arg1: integer-array, arg2: integer) → integer-array
arg1integer-array
arg2integer
Возвращаетinteger-array

Примеры

Ввод
arg1 = [3, 8, 12, 5]arg2 = 17
Вывод
[2, 3]

lock icon+13 скрытых тестов при отправке

Сбросить код
def twoSum(nums, target):
    # Напишите код здесь
Тестовые случаи

Случай 1

Случай 2

Случай 3

Ввод

arg1 = [3, 8, 12, 5]
arg2 = 17

Ожидается

[2, 3]