В ряд стоят \(n\) монстров, у \(i\)-го монстра \(a_i\) очков здоровья.
В каждую секунду вы можете выбрать одного живого монстра и запустить в него цепную молнию. Молния наносит ему \(k\) урона, а также распространяется налево (в сторону уменьшения \(i\)) и направо (в сторону увеличения \(i\)) по живым монстрам, нанося каждому по \(k\) урона. Когда молния доходит до мертвого монстра или до начала/конца ряда, она останавливается. Монстр считается живым, если количество его очков здоровья строго больше \(0\).
Например, рассмотрим следующий сценарий: три монстра с уровнями здоровья \([5, 2, 7]\), \(k = 3\). Можно убить всех монстров за \(4\) секунды:
- запустить цепную молнию в \(3\)-го монстра, тогда уровни здоровья будут равны \([2, -1, 4]\);
- запустить цепную молнию в \(1\)-го монстра, тогда уровни здоровья будут равны \([-1, -1, 4]\);
- запустить цепную молнию в \(3\)-го монстра, тогда уровни здоровья будут равны \([-1, -1, 1]\);
- запустить цепную молнию в \(3\)-го монстра, тогда уровни здоровья будут равны \([-1, -1, -2]\).
Для каждого \(k\) от \(1\) до \(\max(a_1, a_2, \dots, a_n)\) посчитайте минимальное количество секунд, за которое можно убить всех монстров.
Выходные данные
Для каждого \(k\) от \(1\) до \(\max(a_1, a_2, \dots, a_n)\) выведите минимальное количество секунд, за которое можно убить всех монстров.