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

Leetcode—2661.找出叠涂元素【中等】

2023每日刷题(四十六)

Leetcode—2661.找出叠涂元素

在这里插入图片描述

题意解读

题目意思就是,按照arr数组从左到右的顺序遍历各个arr[i],涂抹这个值在矩阵中对应位置的网格,一旦你发现它所在的行或者列满员了,就返回这个i

解题思路

在这里插入图片描述

实现代码

class Solution {
public:
    int firstCompleteIndex(vector<int>& arr, vector<vector<int>>& mat) {
        int m = mat.size(), n = mat[0].size();
        unordered_map<int, pair<int, int>> m1;
        vector<int> row(m, 0), col(n, 0);
        for(int i = 0; i < m; i++) {
            for(int j = 0; j < n; j++) {
                m1[mat[i][j]] = {i, j};
            }
        }
        int k = 0;
        while(k >= 0) {
            auto [i, j] = m1[arr[k]];
            row[i]++;
            col[j]++;
            if(row[i] == n || col[j] == m) {
                return k;
            }
            k++;
        }
        return k;
    }
};

运行结果

在这里插入图片描述
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!


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

相关文章:

  • Unity 与 虚拟机ROS连接
  • 人工智能|机器学习——感知器算法原理与python实现
  • LeetCode417. Pacific Atlantic Water Flow
  • Java面试准备
  • 简单测试大语言模型 Yi-34B 的中日英能力
  • matlab操作方法(一)——向量及其操作
  • Vue2学习笔记(计算属性)
  • 蓝桥杯每日一题2023.12.1
  • C#基础与进阶扩展合集-进阶篇(持续更新)
  • C语言练习记录(蓝桥杯练习)(小蓝数点)
  • Layui xmSelect使用:如何动态获取数据并设置默认值
  • ELK+Filebeat
  • mysql从库设置为只读
  • 基于springboot+vue的点餐系统(前后端分离)
  • R语言中的机器学习
  • KDE指导聚类分析(一)噪声问题
  • 【AI】Pytorch神经网络分类初探
  • R语言实验三
  • C++基础 -28- 友元
  • AIGC系列之:GroundingDNIO原理解读及在Stable Diffusion中使用