周賽341。答案初始值設錯吃一個WA,連自己都覺得很瞎。

題目

輸入m*n的二進位矩陣mat,找到出現最多1的列號,以及出現次數。

如果有多個列出現1的次數相同,則選擇列號較小的。

解法

依照題意,算每列的1有幾個,如果比之前還多就更新答案的列號和1出現次數。

時間複雜度O(MN)。空間複雜度O(1)。

class Solution:
    def rowAndMaximumOnes(self, mat: List[List[int]]) -> List[int]:
        mx_row=0
        mx_cnt=0
        
        for i,row in enumerate(mat):
            cnt=sum(row)
            if cnt>mx_cnt:
                mx_cnt=cnt
                mx_row=i
                
        return [mx_row,mx_cnt]