Contest.samsu.ru :: соревнования по программированию
Русская версия || English version
Login:
Password:
Забыли пароль?
 пример поиска: Вася Пупкин
 

D. Важные функции

Задачу добавил: alef

Успешно сдано решений: 16

Ограничение по времени: 2 с

Ограничение  по памяти: 256 Мб


Министр безопасности Пафнутий предложение высказал: нужен человек, который будет заранее в залу приходить и измерять температуру. Ежели слишком жарко или слишком холодно окажется — будет время, чтобы протопить залу или же проветрить. На что министр экономики Калистрат возразил, что пора уже переходить к современным технологиям: надобно, чтобы котельная автоматически меняла режим отопления в зависимости от прогноза погоды. Да и пора уже спроектировать систему «Умный Дворец». Что министр науки на это скажет?

Министр науки Фалалей сообщил, что разработка такой системы уже ведётся, однако ввиду того, что система большая и сложная, внедрять её придётся по частям. Базовая часть уже почти готова, осталось лишь уточнить, какие функции она будет реализовывать. Поэтому Фалалей предлагает каждому министру указать наиболее важную функцию, которую этот министр считает необходимой в базовой части системы.

Чтобы проект по внедрению базовой части был утверждён, его должны поддержать не менее из министров. Министр поддержит проект, если в нём будет реализована указанная им функция.

Ради простоты обозначим функции системы целыми числами. Чем меньше по абсолютной величине отличаются друг от друга эти числа, тем более близкими будут соответствующие им функции, и тем проще эти функции реализовывать совместно.

Назовем сложностью проекта максимальную (по абсолютной величине) разность между входящими в него функциями. Министр науки Фалалей, разумеется, хочет, чтобы проект был поддержан. Но вместе с тем он хочет, чтобы этот проект имел минимально возможную сложность. Ваша задача — определить, какие функции следует включить в проект, чтобы пожелания Фалалея были выполнены.

Входные данные

В первой строке содержатся целые числа и — общее количество министров и количество министров, необходимое для утверждения проекта.

Во второй строке содержится целых чисел ,  — числовое обозначение функции, указанной министром .

Выходные данные

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

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

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

Примеры

Входные данные
11 5
18 9 1 11 18 4 9 18 16 4 11
Выходные данные
7 6 
2 4 6 7 10 11 
Входные данные
14 7
15 21 13 7 10 5 19 20 13 21 3 5 12 13
Выходные данные
8 8 
3 4 5 6 9 12 13 14 
Примечание

Поясним приведённые примеры.

В первом примере необходимо, чтобы проект поддержали хотя бы министров.

Как можно видеть, в предложенном ответе два министра ( и ) хотят видеть в базовой части системы функцию , ещё два министра ( и ) считают необходимой реализацию функции , и, наконец, ещё двум министрам ( и ) представляется необходимой функция . Таким образом, фактическое количество министров, готовых поддержать проект, окажется равным , в нём будет реализовано функции, а сложность этого проекта составит .

Можно заметить, что это не единственно возможный ответ, существует ещё два допустимых варианта.

Если в предыдущем проекте функцию заменить на функцию , можно будет получить поддержку министров: хотя министры и не будут поддерживать проект, его одобрит министр . Сложность этого проекта также будет , функций в нём будет реализовано , поэтому он ничуть не хуже предшествующего.

Также сложность имеет проект, в котором реализованы другие три функции — функция , функция и функция . Такой проект, как и первый, поддержат шесть министров: министры и желают видеть функцию , министр будет доволен наличием функции , а министры , и одобряют функцию .

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



Сдать задачу

Задать вопрос жюри по этой задаче