数值1 在矩阵中的最大数量是多少,现有一个尺寸为sideLength*sideLength 的矩阵M,矩阵中的每个单元格的值不是0就是1,而且知道矩阵的边长maxOnes,计算矩阵中最多可以有多少个1
class Solution(object):
def maximumNumberOfOnes(self,width: int,height: int, sideLength:int,maxOnes:int) -> int:
arr = [0 for _ in range(sideLength*sideLength)]
for i in range(height):
for j in range(width):
row = i%sideLength
col = j%sideLength
arr[row*sideLength +col]+=1
arr.sort()# 升序
ans=0
for i in range(maxOnes):
ans += arr[len(arr) -1 -i] # 1的个数
return ans
if __name__ == '__main__':
width,height,sideLength,maxOnes = 2,1,4,2
print(Solution().maximumNumberOfOnes(width,height,sideLength,maxOnes))