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

LeetCode

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

https://leetcode-cn.com/problems/find-the-town-judge/

分析

  • 数据以1 ~ n 排序
    • n = 5 -> 1 2 3 5 如果都相信 4 , 4 都不相信其他人则为法官
  • 法官不信任任何人
  • 任何人都相信法官
  • 信任法官的人数为 n - 1 人 -> 法官不信任自己
  • 法官不信任任何人[0] -> 0
class Solution {
    public int findJudge(int N, int[][] trust) {    
        int [][]human = new int [N][2];

        for (int people[] : trust){
            int in = people[0];
            // 相信的人
            int out = people [1];
            // 被相信的人
            human[in - 1][0] ++;
            human[out - 1][1] ++;        
        }

        for (int i = 0; i < N; i++){
            if(human[i][0] == 0 && human[i][1] == N - 1)
            // 法官被所有人信任,当自己不信任 N - 1
                return i + 1;
        }

        return -1;

    }
}

其中不能用,读取每一个 trust 的数据,因为法官不信任任何人,不存在

// for (int i = 0; i < N; i++){
//     int in = trust[i][0];
//     int out = trust[i][1];
//     human[in - 1][0] ++;
//     human[out - 1][1] ++;
// }

<++>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xingpeng-zhuang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值