최소 공통 조상 2 (LCA 2)
의견: 0
정점이 \(N\)개이고 \(1\)번 정점을 루트로 하는 트리가 주어진다. 두 정점 \(u\), \(v\)의 최소 공통 조상(LCA)은 \(u\)와 \(v\)를 모두 자손으로 갖는 정점 중 루트에서 가장 멀리 떨어진(즉 깊이가 가장 깊은) 정점이다. 각 정점은 자기 자신의 조상으로도 본다.
\(M\)개의 질의가 주어진다. 각 질의마다 두 정점 \(u\), \(v\)의 최소 공통 조상을 출력하여라.
이 문제는 [R01283] 최소 공통 조상의 제한을 키운 버전이다.
\(2 \le N \le 100\,000\), \(1 \le M \le 100\,000\). \(1 \le a, b, u, v \le N\). 주어지는 간선들은 항상 하나의 트리를 이룬다.
첫째 줄에 정점의 개수 \(N\)이 주어진다. 다음 \(N-1\)개의 줄에 트리를 이루는 간선의 정보 \(a\ b\)가 주어진다 — 정점 \(a\)와 \(b\)를 잇는 간선이다 (간선은 방향이 없으며, 트리는 \(1\)번 정점을 루트로 한다).
그 다음 줄에 질의의 개수 \(M\)이 주어지고, 이어지는 \(M\)개의 줄에 질의 \(u\ v\)가 주어진다.
각 질의마다 한 줄에 두 정점 \(u\), \(v\)의 최소 공통 조상을 출력한다.
8
1 2
1 3
2 4
2 5
3 6
5 7
5 8
6
4 5
7 8
4 7
6 8
3 3
4 6
2
5
2
1
3
1
트리는 다음과 같다: \(1\)의 자식은 \(2\), \(3\); \(2\)의 자식은 \(4\), \(5\); \(3\)의 자식은 \(6\); \(5\)의 자식은 \(7\), \(8\)이다.
\(4\)와 \(5\)의 LCA는 \(2\), \(7\)과 \(8\)의 LCA는 \(5\), \(4\)와 \(7\)의 LCA는 \(2\), \(6\)과 \(8\)의 LCA는 루트인 \(1\), \(3\)과 \(3\)의 LCA는 \(3\) 자신, \(4\)와 \(6\)의 LCA는 \(1\)이다.
막혔나요? 코인으로 단계별 힌트를 잠금 해제하세요 — 첫 힌트는 가벼운 방향 제시, 뒤로 갈수록 더 많이 알려 줍니다. 문제를 풀면 모든 힌트가 무료로 공개됩니다.
riseoj 작성
출처 Original
평가 및 의견
최소 공통 조상 2 (LCA 2)
Log in to rate problems.
아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.
풀이 제출
최소 공통 조상 2 (LCA 2)