Вершинне покриття
Середня
Обмеження на час виконання 1 секунда
Обмеження на використання пам'яті 256 мегабайтів
Давайте навчимося розв'язувати наступну NP-задачу.
Вам дано граф і число k. Потрібно знайти у цьому графі таку множину з k вершин, що для кожного ребра даного графа хоча б один з двох його кінців лежить у вибраній множині вершин.
Вхідні дані
Перший рядок містить 3 числа — n, m та k, де n — кількість вершин у графі, m — кількість ребер. Наступні m рядків містять опис ребер графу.
Відомо, що 1 ≤ k ≤ n ≤ 2000, 1 ≤ m ≤ 10^5. Степінь кожної вершини не менша 1.
Вихідні дані
Якщо шукана множина існує, у першому рядку виведіть слово Yes, а у другому k чисел — номери вибраних вами вершин. Якщо ж множини не існує, виведіть слово No. Якщо можливих відповідей декілька, виведіть довільну. Одну вершину не можна брати у множину 2 рази, тобто усі k чисел повинні бути різними.
Приклади
Вхідні дані #1
Відповідь #1
Відправки 597
Коефіцієнт прийняття 8%