본문 바로가기
알고리즘 문제/Leetcode

[leetcode][997] Find the Town Judge

by 햄과함께 2019. 3. 2.
320x100

문제 : https://leetcode.com/problems/find-the-town-judge/




다른 사람한테 믿음을 받은 횟수(?)를 저장한는 배열(cnt라고 하자)을 하나 만든다.

trust 배열을 탐색하며 해당 배열을 갱신한다.

조건에서 판사는 아무도 믿지 않으므로 다른 사람을 믿는다고 한 사람의 횟수는 -N으로 초기화한다. (절대 정답이 될 수 없게)

trust 배열을 탐색하며 cnt 배열을 갱신했으면 cnt 배열을 탐색하면서 요소 값이 N-1인(자기를 제외한 모든 사람의 수) 인덱스가 정답이 될 수 있다.

만약 가능한 인덱스가 2번 이상 나오면 정답이 될 수 있는 경우는 유일하다고 했으므로 -1을 반환하고 1번 나오면 그 사람 번호를 반환한다.


시간 복잡도는 O(|trust| + N).




소스코드 : https://gist.github.com/fpdjsns/9fa94b57334915b92aa2587cd0246036

320x100

댓글