Задачі
Логіки
Логіки
Група досконалих логіків знову одержала запит стати головними героями нової логічної головоломки. Тепер вони мають домовитися про те, хто з них має брати участь.
Цього разу логічна головоломка розгортається на неорієнтованому графі з $n$ вузлами та $n$ ребрами. Кожне ребро з'єднує два різні вузли, і між будь-якими двома вузлами існує не більше одного ребра. Крім того, граф зв'язаний, що означає, що з будь-якого вузла можна пройти будь-який інший вузол через послідовність ребер. Для кожного вузла буде один логік, розташований у цьому вузлі, і кожен логік може бачити лише тих логіків, вузли яких з'єднані руба з його власним вузлом.
Вони вже підозрювали, що каверза може бути пов'язана з кольором їхніх очей, тому вирішили влаштуватися так, щоб кожен логік бачив рівно одну людину з блакитними очима. Як це зазвичай буває, жоден з логіків не може бачити колір своїх очей, а отже, навіть логіки з блакитними очима повинні бачити рівно одну блакитнооку людину.
Яка найменша кількість блакитнооких логіків потрібна, щоб зробити необхідну розстановку?
\InputFile
У першому рядку записано ціле число $n~(3 \le n \le 10^5)$ --- кількість вершин у графі, а також кількість логіків.
Наступні $n$ рядків містять пари цілих чисел, що становлять ребра графа. Кожне ребро з'єднує два різні вузли, і жодне ребро не повторюється двічі у вхідних даних.
\OutputFile
Якщо потрібного розташування немає, виведіть $-1$. В іншому випадку виведіть найменшу кількість блакитнооких логіків.
Вхідні дані #1
4 1 2 2 3 3 4 4 1
Вихідні дані #1
2
Вхідні дані #2
3 1 2 2 3 3 1
Вихідні дані #2
-1
Вхідні дані #3
7 1 2 2 3 3 4 4 5 5 6 6 7 2 4
Вихідні дані #3
4