1. 题目

在一个小镇里,按从 1 到 N 标记了 N 个人。传言称,这些人中有一个是小镇上的秘密法官。

如果小镇的法官真的存在,那么:

  • 小镇的法官不相信任何人。
  • 每个人(除了小镇法官外)都信任小镇的法官。
  • 只有一个人同时满足属性 1 和属性 2 。

给定数组 trust,该数组由信任对 trust[i] = [a, b] 组成,表示标记为 a 的人信任标记为 b 的人。

如果小镇存在秘密法官并且可以确定他的身份,请返回该法官的标记。否则,返回 -1。

示例 1:
输入:N = 2, trust = [[1,2]]
输出:2示例 2:
输入:N = 3, trust = [[1,3],[2,3]]
输出:3示例 3:
输入:N = 3, trust = [[1,3],[2,3],[3,1]]
输出:-1示例 4:
输入:N = 3, trust = [[1,2],[2,3]]
输出:-1示例 5:
输入:N = 4, trust = [[1,3],[1,4],[2,3],[2,4],[4,3]]
输出:3提示:
1 <= N <= 1000
trust.length <= 10000
trust[i] 是完全不同的
trust[i][0] != trust[i][1]
1 <= trust[i][0], trust[i][1] <= N

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/find-the-town-judge
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • a–>b,a信任b,记a的出度1,b的入度1
  • 法官是出度为0(不相信任何人),入度为N-1(大家都要相信他)
class Solution {public:int findJudge(int N, vector<vector<int>>& trust) {const int k = N+1;bool trustPeople [k] = {false};//你相信别人int beTrust[k] = {0};//被别人相信for(auto& v : trust){trustPeople[v[0]] = true;beTrust[v[1]]++;}for(int i = 1; i <= N; ++i)if(!trustPeople[i] && beTrust[i]==N-1)return i;return -1;}
};

LeetCode 997. 找到小镇的法官(图的出度和入度)相关推荐

  1. 2022-4-6 Leetcode 997.找到小镇的法官——【原来是图的问题啊~】

    第一版,原来其他人可以互相信任. class Solution {public:int findJudge(int n, vector<vector<int>>& tr ...

  2. leetcode 997 找到小镇的法官

    https://leetcode-cn.com/problems/find-the-town-judge/ 题目 在一个小镇里,按从111到nnn为nnn个人进行编号.传言称,这些人中有一个是小镇上的 ...

  3. 每日一题 leetcode 997. 找到小镇的法官 java

    class Solution {public int findJudge(int n, int[][] trust) {if(trust.length==0){if(n==1) return 1;el ...

  4. 997. 找到小镇的法官_小镇...

    997. 找到小镇的法官 Bethlehem Media Net strives to be the "voice of the voiceless" bringing the s ...

  5. 【快乐水题】997. 找到小镇的法官

    原题: 力扣链接:997. 找到小镇的法官 题目简述: 在一个小镇里,按从 1 到 n 为 n 个人进行编号.传言称,这些人中有一个是小镇上的秘密法官. 如果小镇的法官真的存在,那么: 小镇的法官不相 ...

  6. 力扣题目——997. 找到小镇的法官

    注:本文的代码实现使用的是 JS(JavaScript),为前端中想使用JS练习算法和数据结构的小伙伴提供解题思路. 描述 在一个小镇里,按从 1 到 n 为 n 个人进行编号.传言称,这些人中有一个 ...

  7. 997. 找到小镇的法官

    在一个小镇里,按从 1 到 N 标记了 N 个人.传言称,这些人中有一个是小镇上的秘密法官. 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人. 每个人(除了小镇法官外)都信任小镇的法官. 只有 ...

  8. leetcode(力扣) 997. 找到小镇的法官 (剧本杀推理)

    文章目录 题目描述: 思路分析 完整代码: 题目描述: 小镇里有 n 个人,按从 1 到 n 的顺序编号.传言称,这些人中有一个暗地里是小镇法官. 如果小镇法官真的存在,那么: 小镇法官不会信任任何人 ...

  9. 997.找到小镇的法官(名流问题)

    小镇里有 n 个人,按从 1 到 n 的顺序编号.传言称,这些人中有一个暗地里是小镇法官. 如果小镇法官真的存在,那么: 小镇法官不会信任任何人. 每个人(除了小镇法官)都信任这位小镇法官. 只有一个 ...

最新文章

  1. [Java] SSH框架笔记_Struts2配置问题
  2. 【机器学习】机器学习项目流程
  3. Pandas CookBook -- 04选取数据子集
  4. [转].NET 开源项目 Polly 介绍
  5. 数据结构 - 二叉排序树BST(创建、遍历、删除节点)
  6. win10 linux装软件有哪些,win10若何装linux,win10安装linux双系统的详细教程,微商必备软件有哪些...
  7. php把excel转化为csv,php如何把excel转化为csv
  8. 解决ASP.NET MVC 下使用SQLite 报no such table的问题
  9. 数据库设计中常见表结构的设计技巧(转)
  10. -函数-MATLAB提供的函数/主子函数/匿名-嵌套函数
  11. BubbleSort C#
  12. 不容错过的5款黑科技软件,建议收藏转发
  13. 黑马程序员Python教程的代码--植物大战僵尸游戏代码
  14. 图——基本的图算法(四)关键路径
  15. Linux修改网络配置
  16. 数分下第3讲 (8.1节):空间直角坐标系和向量运算
  17. 西工大计算机学院李春科,西北工业大学“青春逐梦 激情飞扬”2014友谊校区元旦晚会成功举办...
  18. 让笔记本的无线网卡指示灯不再狂闪的方法
  19. 部署在IIS上的网站返回错误码 “405”解决方案
  20. 惠普与戴尔模仿IBM转型难 消化整合周期长

热门文章

  1. mysql 最值复杂查询_MySQL高级查询
  2. HDU-1069 Monkey and Banana
  3. rbac 权限分配, 基于formset实现,批量增加
  4. SQL查询优化《三》:少做重复的工作
  5. ASP.NET小收集:Word的编码是Unicode
  6. 为了兴趣爱好,我该选嵌入式么?
  7. android性能测试工具之dumpsys
  8. 别人不让你发传单怎么办?
  9. 别忘了当初你为何出发
  10. python 类似wordpress_python,_python 有没有类似WordPress的这种库?,python - phpStudy