Logo
(追記) (追記ここまで)

22106번 - Дерево 다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 256 MB711100.000%

문제

Искусству выращивания карликовых деревьев — бонсай уже более двух тысяч лет, и за это время было придумано множество различных стилей и техник. В этой задаче вам тоже предлагается вырастить дерево, но в несколько другом смысле.

Дерево — неориентированный связный граф без циклов. Изначально у вас есть дерево, состоящее из одной вершины. Вам доступны две операции с вашим деревом: удалить одно ребро и оставить любую из двух получившихся частей дерева, а также добавить две новые вершины и соединить их с вершиной, у которой до этого было не более одной смежной с ней вершины. Какое минимальное количество операций нужно, чтобы получить заданное дерево?

입력

Первая строка содержит целое число n (1 ≤ n ≤ 105). Каждая из следующих n - 1 строк содержит по два числа ui, vi — ребра дерева: (1 ≤ ui, vin для всех i от 1 до n - 1). Гарантируется, что заданный граф является деревом.

출력

Если такое дерево построить невозможно, выведите единственное число -1. В ином случае выведите минимальное количество операций, которое нужно, чтобы получить данное дерево.

제한

예제 입력 1

2
1 2

예제 출력 1

2

예제 입력 2

3
1 2
2 3

예제 출력 2

1

예제 입력 3

5
1 2
1 3
1 4
1 5

예제 출력 3

-1

힌트

출처

Contest > Russian Code Cup > 2014 > RCC 2014 Second Qualification Round D번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /