3Sum

MediumАлгоритмы
10:00
Лучше работает на десктопе
Two PointersSorting

Дан массив целых чисел nums. Найдите все уникальные тройки [nums[i], nums[j], nums[k]] такие, что i ≠ j ≠ k и nums[i] + nums[j] + nums[k] == 0.

Тройки не должны повторяться. Каждая тройка отсортирована по возрастанию. Тройки отсортированы лексикографически.

Сигнатура

def three_sum(nums: list[int]) -> list[list[int]]:

Constraints

  • 3 ≤ len(nums) ≤ 3000
  • -10⁵ ≤ nums[i] ≤ 10⁵

Примеры

Пример 1

Вход:
nums = [-1,0,1,2,-1,-4]
Выход:[[-1,-1,2],[-1,0,1]]

Пример 2

Вход:
nums = [0,1,1]
Выход:[]

Пример 3

Вход:
nums = [0,0,0]
Выход:[[0,0,0]]
Консоль
Нажмите Run или Ctrl+Enter для запуска