Сонячний Граф#3291

Сонячний Граф

3 секунди
64 мегабайти
Складна

Сонце — це велике небесне тіло, якому поклоняються в різних релігіях. Боб захоплюється Сонцем і всім, що на нього схоже. Він виявив, що може знаходити форму Сонця в певних графах, які називає "Сонячними".

Граф G=(V,E) з вершиною v \in V вважається "Сонячним", якщо існує підграф G'=(V,E'), де E' \subseteq E, що задовольняє наступні умови (зверніть увагу, що множина вершин залишається незмінною):

  1. Зв'язна компонента, що містить вершину , є циклом, який складається з трьох або більше вершин.

  2. Кожна інша компонента має рівно дві вершини.

На наступному зображенні наведено приклад підграфа, що відповідає цим умовам.

Ваше завдання — написати програму, яка визначає, чи є даний простий граф з вершиною "Сонячним". Простий граф означає, що кожне ребро з'єднує дві різні вершини, і між будь-якою парою вершин може бути не більше одного ребра.

Вхідні дані

Перший рядок містить два цілі числа та , розділені пробілом, де 1 \leq N \leq 200 — кількість вершин, а 0 \leq M \leq 20\,000 — кількість ребер.

Наступні рядків описують ребра. Кожен рядок містить два цілі числа u_i та v_i (1 \leq u_i, v_i \leq N), які вказують на ребро, що з'єднує вершини u_i та v_i. Вершини u_i та v_i завжди різні, і кожна пара вершин з'єднана не більше ніж одним ребром.

Вихідні дані

Виведіть рядок "Yes", якщо граф є "Сонячним". Інакше виведіть "No".

Приклади

Приклад 1

Loading
Loading