ahdtld54   2년 전

DFS를 사용하여 코드를 작성했는데 시간초과가 발생합니다.

저는 DFS탐색 과정에서 MAX와 MIN을 갱신하는 방식을 생각했습니다. 그런데 다른 분들은 LCA방법을 사용하셨는데 이 문제에서는 특정 노드를 부모노드로 잡고 나머지 노드들의 depth를 구하기 위해서는 역시 DFS를 사용한 뒤에 LCA를 구해야한다고 생각해서 LCA방법으로 최대최소를 구하는 방법보다 처음부터 DFS를 통해 구하는 방법이 더 빠를것이라고 생각했습니다..

시간초과의 이유와 이 문제가 만약 LCA가 더 효율적이라면 그 이유가 궁금합니다ㅠㅜㅠㅜ 

djs100201   2년 전

dfs ->쿼리당 시간복잡도 O(N)
lca->쿼리당 시간복잡도 O(logN)

댓글을 작성하려면 로그인해야 합니다.