1
class Solution {
2
public int[] kWeakestRows(int[][] mat, int k) {
3
Map<Integer, Integer> map = new HashMap<>();
4
List<Integer> list = new ArrayList<>();
5
int[] arr = new int[k];
6
for (int i = 0; i < mat.length; i++) {
7
int n = getBits(mat[i]);
8
map.put(i, n);
9
list.add(n);
10
}
11
Collections.sort(list);
12
int z = 0;
13
for (int i = 0; i < k; i++) {
14
for (Map.Entry<Integer, Integer> m : map.entrySet()) {
15
if (list.get(i).equals(m.getValue())) {
16
arr[z++] = m.getKey();
17
map.remove(m.getKey(), m.getValue());
18
break;
19
}
20
}
21
}
22

23
return arr;
24
}
25

26
private static Integer getBits(int[] arr) {
27
int count = 0;
28
for (int i = 0; i < arr.length; i++) {
29
if (arr[i] == 1) count++;
30
}
31

32
return count;
33
}
34
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0