Related Articles
Number of rows and columns in a Matrix that contain repeated values
• Last Updated : 17 May, 2020

Given a N x N square matrix arr[][] which contains only integers between 1 and N, the task is to compute the number of rows and the number of columns in the matrix that contain repeated values.

Examples:

Input: N = 4, arr[][] = {{1, 2, 3, 4}, {2, 1, 4, 3}, {3, 4, 1, 2}, {4, 3, 2, 1}}
Output: 0 0
Explanation:
None of the rows or columns contain repeated values.

Input: N = 4, arr[][]= {{2, 2, 2, 2}, {2, 3, 2, 3}, {2, 2, 2, 3}, {2, 2, 2, 2}}
Output: 4 4
Explanation:
In every column and every row of the square matrix, the values are repeated.
Therefore, the total count is 4 for both rows and columns.

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach: The idea is to use the NumPy library.

• Make a NumPy array of every row and every column in the square matrix.
• Find the length of the unique elements.
• If the length is equal to N then, there are no repeated values present in that particular row or column.

Below is the implementation of the above approach:

 `# Python program to count the number of ``# rows and columns in a square matrix ``# that contain repeated values`` ` `import` `numpy as np`` ` `# Function to count the number of rows``# and number of columns that contain ``# repeated values in a square matrix.``def` `repeated_val(N, matrix):``    ``column ``=` `0``    ``row ``=` `0``    ``for` `i ``in` `range` `(N):`` ` `    ``# For every row, an array is formed. ``    ``# The length of the unique elements ``    ``# is calculated, which if not equal ``    ``# to 'N' then the row has repeated values.``        ``if` `(``len``(np.unique(np.array(matrix[i])))!``=` `N):``            ``row ``+``=` `1` ` ` `    ``# For every column, an array is formed.``    ``# The length of the unique elements ``    ``# is calculated, which if not equal ``    ``# to N then the column has repeated values.``    ``for` `j ``in` `range` `(N):``        ``if` `(``len``(np.unique(np.array([m[j] ``for` `m ``in` `matrix])))!``=` `N):``            ``column ``+``=` `1``             ` `    ``# Returning the count of ``    ``# rows and columns``    ``return` `row, column`` ` ` ` `# Driver code``if` `__name__ ``=``=` `'__main__'``: `` ` `    ` `    ``N ``=` `3``    ``matrix ``=` `[ [ ``2``, ``1``, ``3` `], [ ``1``, ``3``, ``2` `], [ ``1``, ``2``, ``3` `] ]`` ` `    ``print``(repeated_val(N, matrix))  `
Output:
```(0, 2)
```

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up