eolymp
bolt
Try our new interface for solving problems
Məsələlər

Юный сетевик

Юный сетевик

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 256 MiB

Начало 2000-х годов...

Стоило только Вам похвастаться, что Вы собаку съели в проектировании небольших домашних сетей, как Вам предложили спроектировать сеть в Вашем подъезде. И кто сейчас поймёт, что это — Ваш первый опыт?

Итак, сеть будет объединять N пользователей. Каждый пользователь подсоединяется сетевым кабелем к одному из коммуникаторов (хабов). Хабы также могут быть соединены друг с другом такими же кабелями, при этом один и тот же разъём хаба может быть использован как для связи с конечным пользователем, так и для соединения хабов между собой. Сеть должна обеспечивать соединение любой пары пользователей между собой через один или несколько хабов.

Поковырявшись в своих развалах старья, Вы нашли M вполне пригодных к использованию хабов. i-й хаб (1 ≤ i ≤ M) содержит k_i сетевых разъёмов.

Поскольку Вы пообещали, что пользователи сети будут нести траты только на покупку кабеля до ближайшего хаба, Вы должны спроектировать сеть так, чтобы задействовать минимальное количество устройств, которые у Вас имеются (надо же что-то оставить на будущие проекты!).

Сможете решить эту задачу?

Giriş verilənləri

В первой строке входного файла заданы числа N и M (2 ≤ N ≤ 1000, 1 ≤ M ≤ 300). Вторая строка содержит M чисел — величины k_i (2 ≤ k_i ≤ 48).

Çıxış verilənləri

Если задача не имеет решения, единственная строка выходного файла должна содержать текст Epic fail.

В противном случае в первой строке выведите число K — количество использованных хабов, а во второй - K чисел — их номера (нумерация имеющихся хабов начинается с единицы).

Если задача допускает несколько решений, выведите любое из них.

Nümunə

Giriş verilənləri #1
10 2
48 10
Çıxış verilənləri #1
1
1
Mənbə NEERC Western Subregional Contest 2012