1. Description
2. Solution
**解析:**Version 1,由于是二值矩阵且只有两行,因此根据列的和来设置两行的值。
- Version 1
class Solution:
def reconstructMatrix(self, upper: int, lower: int, colsum: List[int]) -> List[List[int]]:
n = len(colsum)
matrix = [[0] * n, [0] * n]
for i in range(n):
if colsum[i] == 2:
matrix[0][i] = 1
matrix[1][i] = 1
upper -= 1
lower -= 1
elif colsum[i] == 1:
if upper > lower:
matrix[0][i] = 1
upper -=1
else:
matrix[1][i] = 1
lower -=1
if upper == 0 and lower == 0:
return matrix
return []
Reference
- https://leetcode.com/problems/reconstruct-a-2-row-binary-matrix/