e-olymp

Вода

Нещодавно Сергій пішов до колодязя за водою, але так і не повернувся. Він узяв із собою n каністр, кожну з яких він повністю наповнив водою. Тепер Сергій хоче доставити їх у свій заміський будинок. От у цьому і полягає проблема. За один раз Сергій може віднести не більш 2-х каністр — адже у нього усього дві руки. Більш того, він може нести не більш k літрів води.

Тепер Сергій стоїть біля колодязя і думає, за яке мінімальне число разів він може віднести усю воду додому, і чи може взагалі. Допоможіть йому вирішити це завдання.

Вхідні дані

У першому рядку задано два цілі числа n та k (1n105). Другий рядок містить n цілих чисел - об’єми каністр у літрах. Усі вхідні числа додатні та не перевищують 109.

Вихідні дані

Якщо Сергій не зможе віднести усю воду додому, виведіть "Impossible". Інакше виведіть одне число — мінімальну необхідну кількість разів.

Ліміт часу 1 секунда
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
4 4
1 2 3 3
Вихідні дані #1
3
Автор neerc.ifmo.ru
Джерело Сезон 2008-2009. Цикл интернет-олимпиад для школьников. Седьмая индивидуальная олимпиада. 10 января 2009 года, Задача B