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

2023每日刷题(四十六)

Leetcode---2661.找出叠涂元素

题意解读

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

解题思路

实现代码

cpp 复制代码
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;
    }
};

运行结果


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

相关推荐
float_com21 分钟前
【STL】stack,deque,queue 基础,应用与操作
c++·stl·极速入门
学习使我变快乐29 分钟前
C++:用类实现链表,队列,栈
开发语言·c++·链表
lmy_t35 分钟前
C++之第十二课
开发语言·c++
马剑威(威哥爱编程)39 分钟前
除了递归算法,要如何优化实现文件搜索功能
java·开发语言·算法·递归算法·威哥爱编程·memoization
算法萌新——11 小时前
洛谷P2240——贪心算法
算法·贪心算法
湖北二师的咸鱼1 小时前
专题:二叉树递归遍历
算法·深度优先
tyler-泰勒1 小时前
初始c++:入门基础(完结)
java·开发语言·c++
天行健王春城老师1 小时前
六西格玛绿带培训多少钱?从授“鱼”到授“渔”
经验分享
重生之我要进大厂1 小时前
LeetCode 876
java·开发语言·数据结构·算法·leetcode
Filotimo_2 小时前
【自然语言处理】实验三:新冠病毒的FAQ问答系统
人工智能·经验分享·笔记·python·学习·自然语言处理·pycharm