#997 找到小镇法官
程序员文章站
2022-05-21 15:07:04
...
在一个小镇里,按从 1
到 N
标记了 N
个人。传言称,这些人中有一个是小镇上的秘密法官。
如果小镇的法官真的存在,那么:
-
小镇的法官不相信任何人。
-
每个人(除了小镇法官外)都信任小镇的法官。
-
只有一个人同时满足属性 1 和属性 2 。
给定数组 trust
,该数组由信任对 trust[i] = [a, b]
组成,表示标记为 a
的人信任标记为 b
的人。
如果小镇存在秘密法官并且可以确定他的身份,请返回该法官的标记。否则,返回 -1
。
我的垃圾代码(python):
class Solution:
def findJudge(self, N: int, trust: List[List[int]]) -> int:
items = {}
temp = []
for t in trust:
temp.append(t[0])
if t[1] not in items:
items[t[1]] = 1
else:
items[t[1]] += 1
for k in items:
if items[k] == N-1 and k not in temp:
return k
if N == 1 and len(trust) == 0:
return 1
return -1
下一篇: 蓝桥杯 BFS 迷宫寻宝