diff --git a/1039-find-the-town-judge/find-the-town-judge.js b/1039-find-the-town-judge/find-the-town-judge.js new file mode 100644 index 0000000..795761c --- /dev/null +++ b/1039-find-the-town-judge/find-the-town-judge.js @@ -0,0 +1,19 @@ +/** + * @param {number} n + * @param {number[][]} trust + * @return {number} + */ +var findJudge = function(N, trust) { + const inDegree = new Array(N + 1).fill(0); + const outDegree = new Array(N + 1).fill(0); + for (let a of trust) { + outDegree[a[0]]++; + inDegree[a[1]]++; + } + for (let i = 1; i <= N; ++i) { + if (inDegree[i] === N - 1 && outDegree[i] === 0) + return i; + } + return -1; +}; +