274. Команда аналитиков

Не решаласьСредняя

Аркадий — менеджер команды аналитиков из $k$ человек. У Аркадия есть бэклог из $n$ задач, $i$-я задача требует $t_i$ дней работы любого из членов команды (мы считаем всех членов команды равнозначными). Над каждой задачей от начала до конца должен работать кто-то один: передавать задачи в процессе выполнения неудобно. Для каждой задачи известен дедлайн — $d_i$ рабочих дней.

Помогите Аркадию определить, успеет ли его команда выполнить все задачи в срок.

Формат ввода

В первой строке заданы два целых положительных числа — $n$ и $k$ ($1 \le n, k \le 15$). В каждой из следующих $n$ строк заданы два целых положительных числа — $t_i$ и $d_i$ ($1 \le t_i \le d_i \le 10^9$).

Формат вывода

Выведите NO, если нельзя выполнить все задачи в срок.

Иначе в первой строке выведите YES. Далее выведите $k$ строк, причем в $i$-й строке будет описание того, какие задачи выполняет $i$-й сотрудник: сначала выведите одно целое неотрицательное число $t_i$ — количество задач, которое будет выполнять $i$-й сотрудник, а зачем выведите $t_i$ чисел — номера задач, которые будет выполнять $i$-й сотрудник. Выводите номера задач в том порядке, в котором их должен выполнять сотрудник. Задачи нумеруются в порядке перечисления во входных данных.

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

Примечание

В первом тестовом примере можно поступить так: первый сотрудник будет выполнять вторую, четвёртую и пятую задачи, а второй сотрудник будет выполнять первую и третью задачу.

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

Ограничения

Ограничение времени

1 с

Ограничение памяти

256 МБ

Пример 1

Ввод
5 2
3 3
2 2
3 6
2 4
2 6
Вывод
YES
3 2 4 5 
2 1 3 

Пример 2

Ввод
2 1
4 7
4 7
Вывод
NO

Пример 3

Ввод
1 2
1 2
Вывод
YES
1 1 
0 

Теги

Нужно войти, чтобы отправить решение.Войти