Задачи
Головоломка короля
Головоломка короля
Король Кендрик --- суверенный правитель Королевства Котлин. Он готовится к следующему заседанию правительства. Королевство Котлин состоит из $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
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