0%

LeetCode 1337. The K Weakest Rows in a Matrix

题目

原题在此

解析

将power 和 index 组成 pair 放入set(set会自己排好序), 然后返回k个index就好.

代码

c++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
public:
vector<int> kWeakestRows(vector<vector<int>>& mat, int k) {
vector<int> res;
set<pair<int, int>> st;
for(int i = 0; i < mat.size(); ++i) {
int o = lower_bound(mat[i].begin(), mat[i].end(), 0, greater<int>()) - mat[i].begin();
st.insert({o, i});
}

for(auto it = st.begin(); k > 0; --k) {
res.push_back(it -> second);
++it;
}
return res;
}
};