Skip to content
Related Articles

Related Articles

Python map function to find row with maximum number of 1’s

View Discussion
Improve Article
Save Article
  • Difficulty Level : Basic
  • Last Updated : 28 Jul, 2022
View Discussion
Improve Article
Save Article

Given a boolean 2D array, where each row is sorted. Find the row with the maximum number of 1s. 

Examples:

Input: 
matrix =
        [[0, 1, 1, 1],
         [0, 0, 1, 1],
         [1, 1, 1, 1],  
         [0, 0, 0, 0]]
 
Output: 2

We have existing solution for this problem please refer Find the row with maximum number of 1’s. We can solve this problem in python quickly using map() function. Approach is very simple, find sum of all 1’s in each row and then print index of maximum sum in a list because row having maximum 1 will also have maximum sum. 

Implementation:

Python3




# Function to find the row with maximum number of 1's
def maxOnes(input):
 
    # map sum function on each row of
    # given matrix
    # it will return list of sum of all one's
    # in each row, then find index of maximum element
    result = list(map(sum,input))
    print (result.index(max(result)))
 
# Driver program
if __name__ == "__main__":
    input = [[0, 1, 1, 1],[0, 0, 1, 1],[1, 1, 1, 1],[0, 0, 0, 0]]
    maxOnes(input)

Output

2

Complexity : O(M*N)

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!