Ctrl K

Скобки для наименьшего значения

Средняя
Дана строка expr вида A+B, где A и B — положительные числа без нулей в записи. Вставьте в неё ровно одну пару скобок: ( где-то левее знака +, ) где-то правее него, так чтобы получилось корректное выражение. Число, стоящее вплотную к скобке снаружи, умножается на значение в скобках: 2(3+4)5 означает 2 · (3 + 4) · 5 = 70. Верните строку с расставленными скобками, у которой значение наименьшее. Если таких несколько, выберите ту, где ( стоит левее всего, а среди них — ту, где ) стоит левее всего.
Пример 1
expr='23+45' → '(23+45)'

Варианты: (23+45) = 68, (23+4)5 = 135, 2(3+45) = 96, 2(3+4)5 = 70. Меньше всего 68.

Пример 2
expr='99+11' → '9(9+1)1'

9(9+1)1 = 9 · 10 · 1 = 90, а (99+11) = 110. Ответ — «9(9+1)1».

Пример 3
expr='7+8' → '(7+8)'
Ограничения
  • 3 ≤ len(expr) ≤ 10
  • expr имеет вид A+B, где A и B — непустые строки из цифр 1–9
  • Ответ помещается в 32-битное знаковое целое
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСледующее время из тех же цифр СредняяВосстановить потерянную точку СредняяСамое позднее время из цифр СредняяСамый маленький код замка СредняяПары подстрок с одной опечаткой Средняя
загружаем Python…
Вход
expr='23+45'
Ожидается
'(23+45)'

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