В Шэньчжэне Вова взял напрокат велосипед и большую часть времени ездил по
городу на нём. Подъезжая к одному из городских парков, Вова обратил
внимание на то, что на плане парка, висящем около центрального входа,
отмечены несколько каменных статуй, находящихся в этом парке. Одна из таких статуй
стояла тут же, прямо у входа в парк. Вова захотел заехать в парк на
велосипеде и сфотографировать все статуи. На территории парка есть
несколько двусторонних велодорожек. Каждая
велодорожка начинается и заканчивается у одной из каменных статуй и представляет
собой отрезок на плоскости. Если две велодорожки имеют общую
точку, то в этой точке можно свернуть с одной из них на другую. Если статуя
находится непосредственно на велодорожке, то она не мешает передвижению по ней
и может быть с неё сфотографирована.
Сможет ли Вова добраться на велосипеде до всех статуй в парке, не съезжая
с велодорожек?
Исходные данные
В первой строке записаны целые числа n и m — количество статуй и
велодорожек в парке (1 ≤ m < n ≤ 200). Далее идут n строк,
каждая из которых содержит координаты одной статуи на плане парка.
Координаты — целые числа, по модулю не превосходящие 30 000.
Координаты любых двух статуй различны. Каждая из следующих m строк
содержит два различных целых числа в пределах от 1 до n — номера
статуй, между которыми проложена велодорожка.
Результат
Выведите «YES», если Вова сможет доехать по велодорожкам от входа в парк
до всех статуй, находящихся в нём, и «NO» в противном случае.
Примеры
исходные данные | результат |
---|
4 2
0 0
1 0
1 1
0 1
1 3
4 2
| YES
|
4 3
0 0
1 0
1 1
0 1
1 2
2 1
3 4
| NO
|
3 2
0 0
1 0
1 1
1 3
3 2
| YES
|
Источник задачи: Открытое личное первенство УрФУ по программированию 2013