Town Judge

https://leetcode.com/explore/featured/card/may-leetcoding-challenge/535/week-2-may-8th-may-14th/3325/

brutal force:

from collections import defaultdict
class Solution:
    def findJudge(self, N: int, trust: List[List[int]]) -> int:
        if N==1 and len(trust) == 0:
            return 1
        d = defaultdict(list)
        s = set()
        for edge in trust:
            a,b = edge
            d[b].append(a)
            s.add(a)
        res = []
        for k,v in d.items():
            if len(v) == N-1:
                res.append(k)
        
        if len(res) != 1:
            return -1
        if res[0] in s:
            return -1
        return res[0]

图论的方法

indegrees & outdegrees

如果被人相信是indegree,相信别人是outdegree,town judge的indegree是N-1, outdegree是0



Last updated

Was this helpful?