Skip to content

Conversation

@oncsr
Copy link
Contributor

@oncsr oncsr commented Sep 3, 2025

🧷 문제 링크

https://www.acmicpc.net/problem/34226

🧭 풀이 시간

180분

👀 체감 난이도

✏️ 문제 설명

정점 N개, 간선 M개인 그래프에서 l번 이상 r번 이하인 간선들만 사용할 때, 서로 연결되어 있는 정점 쌍의 수를 Q번 구해보자.

🔍 풀이 방법

  • mo's
  • 분리 집합
  • 분할 정복

mo's로 l, r 포인터의 이동 횟수를 $O(M\sqrt{M})$으로 제한한 뒤에 rollback union-find를 이용해서 [0, Q)의 시간 축을 기준으로 분할 정복하고 각 시간별 쿼리의 답을 구해줬다.

근데 시간 초과임.

⏳ 회고

mo's 자체가 $O(M\sqrt{M})$이라 분할 정복을 적용하면 로그의 시간이 붙어서 시간 초과가 나는 것 같다.
그래도 버킷 사이즈를 잘 깎으면 뚫릴 줄 알았는데 절대 안 뚫림.

포인터의 이동 성질을 잘 파악하면 분할 정복 없이 그냥 rollback union-find만으로도 될 수도 있을 것 같은데 내일 해봐야겠다.

@oncsr oncsr added the fail 😢 해설을 보고 풀었거나, 못 풀었을 때 label Sep 3, 2025
@ShinHeeEul ShinHeeEul merged commit 3391873 into main Sep 3, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fail 😢 해설을 보고 풀었거나, 못 풀었을 때

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants