RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
KOI00081

등산 마니아

Platinum V 플래티넘 V
난이도
2s
시간 제한
512MB
메모리 제한
2
맞았습니다!!
2
제출 수
100.0%
정답률
레이팅

의견: 0

설명

동네 뒷 산에는 등산로가 있다. 등산로는 \(N\)개의 작은 오두막들이 \(N −1\)개의 오솔길로 이어진 형태이다. 한 오솔길은 두 개의 오두막을 양 방향으로 연결한다. 한 오솔길의 길이는 \(1\)이다. 어떤 오두막에서도 다른 모든 오두막으로 하나 이상의 오솔길을 따라 이동하는 것이 가능하다. 오두막들은 \(1\)번부터 \(N\)번까지 번호가 붙어 있으며, \(1\)번 오두막이 산 정상에 있다. \(1\)번 오두막에서 다른 오두막으로 가는 가장 짧은 길을 따라 가면서 거치는 모든 오솔길들은 항상 산을 내려가는 방향이다.

철수는 등산 마니아이다. 철수가 한 오두막에서 다른 오두막으로 갈 때는 항상 산 정상을 거치는 가장 짧은 길을 따라 간다. 이렇게 간 길의 다양성은 길에 포함된 오솔길의 개수로 정의된다. 두 번 이상 지나간 오솔길은 한 번만 센다는 것에 주의하라.

아래 그림은 가능한 하나의 상황을 보여 준다. 산 정상에 \(1\)번 오두막이 있고 3번 오두막과 \(4\)번 오두막이 오솔길로 이어져 있다.

아래 그림은 \(2\)번 오두막에서 \(7\)번 오두막으로 가는 가장 짧은 길을 보여준다.

아래 그림은 \(2\)번 오두막에서 \(7\)번 오두막으로, 정상을 거쳐서 가는 가장 짧은 길을 보여 준다.

등산로의 구성을 입력으로 받아 모든 가능한 \(i\), \(j\)의 쌍에 대해서(\(1 ≤ i\) < \(j ≤ N\)), 철수가 \(i\)번 오두막에서 \(j\)번 오두막으로 가는 길의 다양성의 총 합을 계산하는 프로그램을 작성하라.

제약
  • \(2 ≤ N ≤ 300,000 \)
입력 형식

첫 번째 줄에 \(N\)이 주어진다. 다음 \(N −1\)개의 줄에 오두막 번호 두 개가 공백 하나를 사이에 두고 주어진다. 두 오두막이 오솔길로 이어져 있다는 뜻이다.

출력 형식

첫 번째 줄에 문제의 정답을 출력한다.

서브태스크
서브태스크점수설명

1

8점

\(1\)번 오두막과 \(2\)번 오두막, \(2\)번 오두막과 \(3\)번 오두막, ···, 과 같이 모든 \(i\) (\(1 ≤ i ≤ N − 1\))에 대해 \(i\)번 오두막이 \(i + 1\)번 오두막과 오솔길로 이어짐.

2

11점

\(1\)번 오두막과 다른 모든 오두막이 각각 오솔길로 이어짐.

3

19점

\(1\)번 오두막에서 산을 내려가는 방향으로 갈 때, (\(1\)번 포함) 모든 오두막에서 내려가는 방향의 오솔길은 \(2\)개이거나 \(0\)개이다. 또, 내려가는 방향의 오솔길이 \(0\)개인 모든 오두막은 \(1\)번 오두막에서의 거리가 동일하다.

4

17점

\(N ≤ 100\)

5

14점

\(N ≤ 5,000\)

6

31점

추가 제약 조건 없음.

예제 1
입력
3
1 2
2 3
출력
5
예제 2
입력
8
6 2
7 5
3 4
5 6
1 5
4 1
8 6
출력
84
문제 정보

riseoj 작성

출처 올림피아드 > 한국정보올림피아드 > KOI 2020 > 2차 대회 > 초등부 3번 / 중등부 2번

평가 및 의견

등산 마니아

개요
출제자 난이도 Platinum V 플래티넘 V 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

등산 마니아

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8