找到小镇的法官 - C++力扣997题
题目链接:https://leetcode.com/problems/find-the-town-judge/description/
解题思路
这个题目其实十分简单,我们可以直接模拟一遍就行。首先题目保证了提供的信任关系没有重复,也就是说只需要检查到某个人有 n - 1 条信任记录,就已经符合了其中的一个条件。其次就是我们只需要把有信任关系的 $a_i$ 方记录,找到没有任何信任记录且满足条件的那个人,就是题目的答案。
完整代码:
class Solution {
public:
int findJudge(int n, vector<vector<int>>& trust) {
vector<int> trusted(n + 1);
vector<int> judge(n + 1);
for(int i = 0; i < trust.size(); i++) {
judge[trust[i][0]] = 1;
trusted[trust[i][1]]++;
}
for(int i = 1; i <= n; i++) {
if(trusted[i] == (n - 1) && judge[i] == 0) return i;
}
return -1;
}
};
版权属于:江筱雨
本文链接:https://www.yuisblog.com/archives/212/
本站未注明转载的文章均为原创,并采用
CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!