문제 링크
- http://icpc.me/2843
문제 출처
- 2010/2011 COCI #7 5번
사용 알고리즘
- Union Find
- Offline Query
시간복잡도
- O(N + Q alpha N)
풀이
간선을 지우는 쿼리가 주어지면, 일단 오프라인을 의심해봐야 합니다.
쿼리를 역순으로 처리해주면 간선을 만드는 쿼리로 바뀌기 때문에 union find로 처리해줄 수 있습니다.
merge를 해줄 때, 이미 같은 집합에 있는 두 정점을 merge하면 사이클이 생기므로 적절히 처리해주면 쉽게 풀 수 있습니다.
이런 방식으로 풀리는 문제로는 BOJ13306 트리, BOJ17469 트리의 색깔과 쿼리 등이 있습니다.
전체 코드
1 |
|