Войти Регистрация
Алгоритмы

201. Сложить суммы, записанные строками

Лёгкая

Сервис отчётов Т‑Банка получает обороты в копейках строками цифр: "1999999999999999999". В JavaScript такие числа теряют точность, поэтому складывать их нужно как строки.

Даны две строки a и b без ведущих нулей (кроме самой строки "0"). Верните их сумму строкой, тоже без ведущих нулей. Встроенную длинную арифметику и BigInt не используйте.

В работе: Годовой оборот крупного клиента в копейках — 19–20 цифр, а `Number` в JavaScript точен только до 9·10¹⁵: сумма двух оборотов «уехала» бы на сотни рублей.

Пример 1

Ввод
a = "9007199254740993"
b = "7"
Вывод
"9007199254741000"

Больше 2⁵³ — в `Number` получилось бы 9007199254741000.

Пример 2

Ввод
a = "0"
b = "0"
Вывод
"0"

Ограничения

  • 1 ≤ длина строк ≤ 10⁴
  • только цифры, без ведущих нулей
  • Лимит — 2 с на тест (1500 мс).
Как вызывается ваш код Читать ввод и печатать ответ не нужно: мы вызываем функцию на каждом тесте и сравниваем то, что она вернула. print() и console.log() уходят в консоль.
def add_amounts(a, b):
СтрокиАрифметикаДлинные числацельO(n)

Источник: наша задача на данных Т-Банка. Условие пересказано своими словами.