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

Теория графов

Теория графов

\includegraphics{https://static.e-olymp.com/content/fc/fca8e2227f63527071e0abc69e988bdb468d454c.jpg} \includegraphics{https://static.e-olymp.com/content/ec/ec680bd46355e4af82a251fef70d4b6432fd4623.jpg} Сергей изучает теорию графов. Недавно он узнал про радиус и диаметр графа. Рассмотрим неориентированный невзвешенный связный граф \textbf{G}, обозначим длину кратчайшего пути между вершинами \textbf{s} и \textbf{t} через \textbf{ρ(s, t)}. Радиус \textbf{r(G)} графа определяется как . Диаметр \textbf{d(G)} графа определяется как . Интуитивно диаметр графа определяется как наибольшее расстояние между двумя вершинами, а радиус как наибольшее расстояние, которое Вы вынуждены будете пройти из выбранной Вами центральной вершины. Профессор доказал на лекции, что \textbf{d(G)/2} ≤ \textbf{r(G)} ≤ \textbf{d(G)} для любого графа \textbf{G}. Теперь Сергей хочет установить, действительно ли для любых значений \textbf{d} и \textbf{r} таких что \textbf{d/2} ≤ \textbf{r} ≤ \textbf{d} существует граф \textbf{G} такой что \textbf{d(G) = d} и \textbf{r(G) = r}. Помогите ему в этом разобраться. \InputFile Два целых числа \textbf{d} и \textbf{r} (\textbf{d/2} ≤ \textbf{r} ≤ \textbf{d} ≤ \textbf{50}, \textbf{1} ≤ \textbf{r}). \OutputFile Если существует граф с заданными радиусом и диаметром, то в первой строке следует вывести "\textbf{YES}". Вторая строка должна содержать два целых числа: \textbf{n} (\textbf{2} ≤ \textbf{n} ≤ \textbf{400}) и \textbf{m} - количество вершин и количество ребер. Каждая из следующих \textbf{m} строк содержит два целых числа - номера вершин, соединенных ребром. Граф не должен содержать петель и кратных ребер. Если искомого графа не существует, то вывести "\textbf{NO}".
Лимит времени 1 секунда
Лимит использования памяти 256 MiB
Входные данные #1
1 1
Выходные данные #1
YES
2 1
1 2
Автор Andrew Stankevich
Источник Andrew Stankevich Contest 32, Petrozavodsk Summer Training Camp, Wednesday, September 3, 2008