Вода
Вода
Недавно Сергей пошел к колодцу за водой, но так и не вернулся. Он взял с собой n канистр, каждую из которых он полностью наполнил водой. Теперь Сергей хочет доставить их в свой загородный дом. Вот в этом и заключается проблема. За один раз Сергей может унести не более 2 канистр - у него ведь всего две руки. Более того, он может нести не более k литров воды.
Теперь Сергей стоит у колодца и думает, за какое минимальное число раз он может отнести всю воду домой, и может ли вообще. Помогите ему решить эту задачу.
Входные данные
В первой строке содержатся два целых числа n и k (1 ≤ n ≤ 10^5
). Во второй строке заданы n целых чисел - объемы канистр в литрах. Все входные числа положительные и не превышают 10^9
.
Выходные данные
Если Сергей не сможет унести всю воду домой, выведите "Impossible". Иначе выведите одно число - минимальное необходимое число раз.
Пример
4 4 1 2 3 3
3