Skip to content

Conversation

@ShinHeeEul
Copy link
Contributor

🧷 문제 링크

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

🧭 풀이 시간

60 분

👀 체감 난이도

✏️ 문제 설명

개미집은 n개의 방으로 구성되어 있으며 n개의 방은 1번부터 n번 까지 번호가 부여되어 있다. 그 중에서 1번 방은 지면에 바로 연결되어 있는 방이다. 각 방들은 서로 굴을 통해 연결되어 있다. 각 굴을 이동하기 위해서는 굴의 길이만큼 에너지가 소모된다.

개미는 집짓기의 달인이기 때문에 불필요한 굴은 짓지 않는다. 그래서 굴을 타고 한 방에서 다른 방으로 갈 수 있는 경로는 항상 존재하며 유일하다. 임의의 두 방 사이의 거리는 두 개의 방을 연결하는 경로를 구성하는 굴의 길이의 합이다.

겨울잠을 자던 개미들은 겨울잠에서 깨어나 지면으로 올라가 햇살을 보고 싶어한다. 그렇기 때문에 지면과 연결된 1번 방으로 이동을 하려고 한다. 하지만 불행하게도 개미는 긴 겨울잠을 자느라 축적해 놓은 에너지가 적다. 그래서 개미는 에너지를 1번 방에 도달하기 전에 모두 소모 할 수도 있다. 이렇게 에너지가 0이 된 개미는 더 이상 움직일 수 없다. 또한 1번 방에 도착한 개미는 더 이상 움직이지 않는다.

현재 모든 방에는 개미가 한 마리씩 있고 각각의 개미는 각자 축적된 에너지를 가지고 있다. 잠에서 깨어난 모든 개미는 1번 방을 향해서 이동한다. 이때 각각의 개미에 대해 도달할 수 있는 방 중에서 가장 1번 방에 가까운 방의 번호를 출력하시오.

🔍 풀이 방법

도로 네트워크처럼 희소 배열을 값을 저장하는 형식으로 구성하고, 각 개미들 마다 최대 얼마나 갈 수 있는지 logN씩 올라가보면서 구한다.

⏳ 회고

문제 자체를 읽었을 때 굴이 트리임을 파악하기도 어려웠고, 희소 배열을 응용하면 되겠다라고 생각하기까지도 어려운 문제

@ShinHeeEul ShinHeeEul added the success 👍 해설을 보지 않고 풀었을 때 label Apr 15, 2025
@ShinHeeEul ShinHeeEul self-assigned this Apr 15, 2025
@ShinHeeEul ShinHeeEul merged commit e983af8 into main Apr 15, 2025
1 check passed
@ShinHeeEul
Copy link
Contributor Author

지난주 커밋하고 PR을 안날렸었네..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

success 👍 해설을 보지 않고 풀었을 때

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants