Плохая многозадачность

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

Спасать мир --- задача не из легких, трудности возникают на каждом шагу. Так и сейчас, таки пробравшись в кабинет к Поппи Адамс, Эггси вновь попал в передрягу --- на экране появилась сама Поппи и сказала, что агент слишком предсказуем, и она как всегда на несколько шагов впереди, ведь запуск уничтожения антидота к вирусу, который она распространила, уже запущен, и ничто не может это остановить, мир будет уничтожен.

Однако Эггси не просто так является агентом лучшей секретной службы, поэтому он сразу же достал свой ноутбук, вычислил IP-адрес сервера, на котором запущена программа уничтожения и взломал его. Оказалось, что это личный компьютер Поппи, а она не очень хорошо в них разбирается. Ее операционная система MS ADOS не поддерживает параллельное исполнение программ, поэтому все программы исполняются в одном потоке. Для этого поддерживается очередь задач на исполнение, и раз в секунду первая задача из очереди запускается на исполнение. За секунду программа может успеть сделать не более bb операций. Если программа успевает выполнить все необходимые операции, она удаляется из очереди, иначе она переносится в конец очереди на дальнейшее выполнение.

Эггси быстро был обнаружен, а на сервере сменили пароль, тем самым закрыв для него доступ к серверу. Однако перед этим он успел узнать, что программе для уничтожения нужно a_1a\_1 операций для завершения, а также добавить в очередь задач на исполнение n1n - 1 других задач с a_2a\_2, a_3a\_3, \ldots, a_na\_n операциями для выполнения соответственно. Теперь он хочет понять, сколько у него времени, чтобы добраться до Поппи, пока программа уничтожения не завершилась. Помогите ему найти количество секунд, которое потребуется программе уничтожения для завершения.

입력

В первой строке содержится два числа nn и bb --- суммарное количество программ, запущенных на сервере, и максимальное количество операций, которое может выполниться на сервере за секунду (1n105,1b1091 \le n \le 10^5, 1 \le b \le 10^9).

В следующей строке содержится nn чисел a_ia\_i --- количество операций для выполнения программы уничтожения и добавленных Эггси программ соответственно в порядке, в котором они расположены в очереди (1a_i1091 \le a\_i \le 10^9).

출력

В единственной строке выведите количество секунд, через которое программа уничтожения завершится.

힌트

Во втором тестовом примере посекундная последовательность действий будет следующая:

  • 11 секунда: первая программа (программа уничтожения) запускается на исполнение, выполняет 22 операции, а затем перемещается в конец очереди;
  • 22 секунда: вторая программа запускается на исполнение, выполняет 22 операции, завершается и удаляется из очереди;
  • 33 секунда: третья программа запускается на исполнение, выполняет 22 операции, а затем перемещается в конец очереди;
  • 44 секунда: четвертая программа запускается на исполнение, выполняет 11 операцию, завершается и удаляется из очереди;
  • 55 секунда: первая программа (программа уничтожения) запускается на исполнение, выполняет 22 операции, а затем перемещается в конец очереди;
  • 66 секунда: третья программа запускается на исполнение, выполняет 22 операции, а затем перемещается в конец очереди;
  • 77 секунда: первая программа (программа уничтожения) запускается на исполнение, выполняет 22 операции, завершается и удаляется из очереди.

Дальнейшее выполнение программ нас не интересует, как видно, через 77 секунд программа уничтожения завершится.