eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Головоломка короля

Головоломка короля

Король Кендрик --- суверенный правитель Королевства Котлин. Он готовится к следующему заседанию правительства. Королевство Котлин состоит из $n$ городов. Города должны быть связаны несколькими двусторонними дорогами. Поскольку за аспекты безопасности и комфорта жителей королевства отвечают министерства, некоторые из них выдвинули следующие требования: \begin{itemize} \item "Все города должны быть связаны новыми дорогами" - Министерство транспорта и цифровой инфраструктуры. \item "Не может быть кольцевой дороги --- дороги, которая соединяет город сам с собой" --- Минприроды. \item "Между парой городов должно быть не более одной дороги" --- Минфин. \item "Если $a_i$ --- количество дорог, ведущих в $i$-й город, то множество $\{a_1, ..., a_n\}$ должно состоять из ровно $k$ различных чисел" --- Министерство ICPC. \end{itemize} У короля Кендрика есть проблемы с требованиями Министерства ICPC. Он просит Вас помочь ему. Найдите любой набор дорог, удовлетворяющий всем вышеперечисленным требованиям, или скажите, что это невозможно. \InputFile Два целых числа $n$ и $k~(1 \le k \le n \le 500)$. \OutputFile Если выполнить все требования невозможно, выведите "\textbf{NO}". В противном случае выведите "\textbf{YES}" в первой строке. Выведите $m~(0 \le m \le n \cdot (n - 1) / 2)$ --- количество дорог во второй строке. Следующие $m$ строк должны содержать пары целых чисел $a$ и $b~(1 \le a, b \le n)$ --- города, соединенные дорогой. \includegraphics{https://static.eolymp.com/content/fa/fa8364dea4cfd2c564363b0f3bce0f9b26140213.gif}
Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
5 2
Выходные данные #1
YES
4
1 2
1 3
1 4
1 5
Входные данные #2
4 1
Выходные данные #2
YES
4
1 2
2 3
3 4
4 1
Источник 2022 ICPC, NERC, Декабрь 7