You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
문제 링크
https://www.acmicpc.net/problem/14267
문제 조건
아이디어
1번 사장에서 DFS를 하면서 각 사원이 받은 칭찬 수치를 더해주면 된다.
여기서 부모 정보를 단순히 배열로 저장하면 시간 초과가 난다. 최대 10^5개의 각 정점에서마다 부모 정보를 확인하기 위해 10^5개의 배열을 확인해야 하기 때문이다.
따라서 인접리스트를 통해 정점별로 자식 리스트를 가지도록 표현하면된다.
그런데 또 놓친 부분이 있다. 칭찬을 한 사람이 여러 번 받을 수 있다는 점이다. 문제를 읽고 전혀 생각하지 못했던 부분이다. 이런 히든 케이스까지 잘 생각할 수 있도록 해야겠다.
시간 복잡도
최대 10^5개의 정점과 최대 10^5개의 간선으로 시간 안 풀이가 가능하다.
구현
Beta Was this translation helpful? Give feedback.
All reactions