Ctrl K

Рост массива суммой

Сложная
Изначально массив длины n заполнен единицами. За один ход можно взять любой элемент и записать в него сумму всех элементов массива на этот момент (включая сам заменяемый элемент). Ходов можно сделать сколько угодно. Дан массив goal длины n. Верните True, если из массива единиц можно получить ровно goal, и False иначе.
Пример 1
goal=[3, 1, 5] → True

[1, 1, 1] → сумма 3 → [3, 1, 1] → сумма 5 → [3, 1, 5].

Пример 2
goal=[2, 2] → False

Из [1, 1] первый ход даёт [2, 1] или [1, 2], а после него на месте замены всегда оказывается число не меньше 3. Получить [2, 2] нельзя.

Пример 3
goal=[1, 7] → True
Ограничения
  • 1 ≤ n = len(goal) ≤ 5·10⁴
  • 1 ≤ goal[i] ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиКонтур городской застройки СложнаяМаксимум в скользящем окне СложнаяЛужи на рельефной карте СложнаяМедиана в скользящем окне СложнаяШарик и лунка Сложная
загружаем Python…
Вход
goal=[3, 1, 5]
Ожидается
True

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