「 每日一练,快乐水题 」1380. 矩阵中的幸运数
Posted 谁吃薄荷糖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「 每日一练,快乐水题 」1380. 矩阵中的幸运数相关的知识,希望对你有一定的参考价值。
✅力扣原题:
✅题目简述:
给你一个 m * n 的矩阵,矩阵中的数字 各不相同 。请你按 任意 顺序返回矩阵中的所有幸运数。
幸运数是指矩阵中满足同时下列两个条件的元素:
在同一行的所有元素中最小
在同一列的所有元素中最大
✅解题思路:
1.第一次遍历出每行最小值,每列最大值;
2.再遍历一次,满足“幸运数”要求的则输出;
3.over;
✅C++代码:
class Solution
public:
vector<int> luckyNumbers (vector<vector<int>>& matrix)
int m = matrix.size(),n = matrix[0].size();
vector<int> miMin(m, 100000);
vector<int> njMax(n, 1);
for(int i = 0; i < m; i++)
for(int j = 0; j < n; j++)
miMin[i] = min(miMin[i], matrix[i][j]);
njMax[j] = max(njMax[j], matrix[i][j]);
vector<int> ret;
for(int i = 0; i < m; i++)
for(int j = 0; j < n; j++)
if(miMin[i] == matrix[i][j] && njMax[j] == matrix[i][j])
ret.push_back(matrix[i][j]);
return ret;
;
✅结果展示:
以上是关于「 每日一练,快乐水题 」1380. 矩阵中的幸运数的主要内容,如果未能解决你的问题,请参考以下文章