Ctrl K
Курс · шаг 29 из 79К шагуДальше

Сложение чисел-списков

Средняя
Два неотрицательных целых числа хранятся в односвязных списках first и second: каждый узел содержит одну цифру, причём цифры идут от младшего разряда к старшему. Например, число 503 записано как 3 → 0 → 5. Верните сумму этих чисел в виде такого же списка — тоже от младшего разряда к старшему. Оба списка непустые. Ведущих нулей в числах нет, за исключением самого числа 0, которое записано одним узлом.
Пример 1
first=list_node([5, 1]), second=list_node([7, 9]) → [2, 1, 1]

Списки задают числа 15 и 97; 15 + 97 = 112, в обратном порядке — [2, 1, 1].

Пример 2
first=list_node([0]), second=list_node([4, 3, 2]) → [4, 3, 2]

0 + 234 = 234.

Пример 3
first=list_node([9, 9]), second=list_node([1]) → [0, 0, 1]

99 + 1 = 100: перенос проходит через все разряды и добавляет новый.

Ограничения
  • В каждом списке от 1 до 100 узлов
  • 0 ≤ Node.val ≤ 9
  • Последний узел (старший разряд) не равен 0, если в списке больше одного узла
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиОбмен соседей парами СредняяБыстрое возведение в степень СредняяСписок, сложенный с двух концов СредняяВсе результаты расстановки скобок СредняяПлюс один к цепочке цифр Средняя
загружаем Python…
Вход
first=list_node([5, 1]), second=list_node([7, 9])
Ожидается
[2, 1, 1]

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 57 тестов на сервере, включая скрытые.