Skip to content

Commit c22bca6

Browse files
committed
✨ reconstruct a 2 row binary matrix
1 parent 47d444e commit c22bca6

File tree

1 file changed

+42
-0
lines changed
  • src/1253-reconstruct-a-2-row-binary-matrix

1 file changed

+42
-0
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
/**
2+
* @param {number} upper
3+
* @param {number} lower
4+
* @param {number[]} colsum
5+
* @return {number[][]}
6+
*/
7+
var reconstructMatrix = function (upper, lower, colsum) {
8+
const row1 = [];
9+
const row2 = [];
10+
11+
for (let i = 0; i < colsum.length; i++) {
12+
if (colsum[i] === 2) {
13+
row1[i] = 1;
14+
row2[i] = 1;
15+
upper--;
16+
lower--;
17+
continue;
18+
}
19+
20+
if (colsum[i] === 0) {
21+
row1[i] = 0;
22+
row2[i] = 0;
23+
continue;
24+
}
25+
26+
if (upper > lower) {
27+
row1[i] = 1;
28+
row2[i] = 0;
29+
upper--;
30+
} else {
31+
row1[i] = 0;
32+
row2[i] = 1;
33+
lower--;
34+
}
35+
}
36+
37+
if (lower !== 0 || upper !== 0) {
38+
return [];
39+
}
40+
41+
return [row1, row2];
42+
};

0 commit comments

Comments
 (0)