当前位置: 首页 > article >正文

LeetCode 2924. Find Champion II

🔗 https://leetcode.com/problems/find-champion-ii

题目

  • 给 n 个节点,代表 n 支参赛队伍,以及有向边 egeds,a ➡️ b,则代表 a 队比 b 队强
  • 给出最后的冠军队伍,如果冠军不唯一,返回 -1

思路

  • 一种是直接找到入度为 0 的节点,则是胜利队伍
  • 另外一种麻烦且间接,每次找到出度为 0 的节点,代表这个节点必输,更新这个节点的边的节点,直到把所有边都更新完,剩下的节点便是冠军

代码

class Solution {
public:
    int findChampion(int n, vector<vector<int>>& edges) {
        vector<int> in(n);
        int edge_num = edges.size();
        for (auto& edge : edges) {
            in[edge[1]]++;
        }
        unordered_set<int> s;
        int count = 0;
        int ans = -1;
        for (int i = 0; i < n; i++) {
            if (in[i] == 0) {
                count++;
                ans = i;
            }
        }
        if (count != 1) return -1;
        return ans;
    }
};2924

http://www.kler.cn/a/412302.html

相关文章:

  • 【机器学习】如何使用Python的Scikit-learn库实现机器学习模型,并对数据进行预处理和特征缩放以提高模型性能?
  • 英伟达推出了全新的小型语言模型家族——Hymba 1.5B
  • 架构-微服务架构
  • Cocos编辑器
  • 极狐GitLab 17.6 正式发布几十项与 DevSecOps 相关的功能【二】
  • 如何提升编程能力第二篇
  • CRTP mixins EBO
  • 代理模式 (Proxy Pattern)
  • C#基础36-40
  • 【大数据测试 Elasticsearch 的 四大 常见问题及处理方案】
  • 【模糊查询Redis的Key,过滤出其中ZSET类型中包含自定义字符串的元素并删除】
  • 老旧前端项目如何升级工程化的项目
  • 鸿蒙Native使用Demo
  • ubuntu使用Docker,安装,删除,改源等记录
  • 类的加载机制
  • 自制Windows系统(十)
  • Unity 设计模式-单例模式(Singleton)详解
  • 【大数据学习 | Spark-Core】Spark中的join原理
  • 双向链表、循环链表、栈
  • Docker desktop 改变存储位置
  • VUE练习
  • Hive的基础函数
  • 英语知识在线平台:Spring Boot技术探索
  • 流媒体拥塞控制与流控
  • 几个bev模型部署常用的命令
  • 深度学习每周学习总结J6(ResNeXt-50 算法实战与解析 - 猴痘识别)