Code360 powered by Coding Ninjas X Naukri.com. Code360 powered by Coding Ninjas X Naukri.com

Number of Connected Computers.

Moderate
0/80
Average time to solve is 10m
profile
Contributed by
7 upvotes
Asked in companies
FacebookOraclePaytm (One97 Communications Limited)

Problem statement

You have been given a grid ‘ARR’ of size ‘N' * M’. ‘ARR[i][j]’ is ‘1’ if the computer is present at position ‘(i,j)’ otherwise it is zero. A computer is said to be a connected computer if there is a computer in its row or column other than itself. Your task is to return the number of connected computers.

Example:

subsequence

Let’s say you have a grid [[1,0],[1,1]]. We can say the computer ‘ARR[0][0]’ is a connected computer because there is a computer in its column other than itself. We can say the computer ‘arr[1][0]’ is a connected computer because there is a computer in its row and column other than itself. We can say the computer ‘arr[1][1]’ is a connected computer because there is a computer in its row other than itself. Therefore the number of connected computers is 3.
Detailed explanation ( Input/output format, Notes, Images )
Input Format:
The first line contains a single integer ‘T’ representing the number of test cases.

The first line of each test case contains two space-separated ‘N’ and ‘M’ representing the number of the rows and columns in ‘ARR’ respectively.

Each of the next ‘N’ lines of input contains ‘M’ single space-separated integers representing the elements of ‘ARR’.
Output Format:
For each test case, return the number of connected computers. 

Print the output of each test case in a separate line.
Note:
You do not need to print anything; it has already been taken care of. Just implement the given function.
Constraints:
1 <= T <= 10
1 <= N <= 100
1 <= M <= 100
‘ARR[i][j]’ = 0 or 1

Where ‘ARR[i][j]’ is an element of grid ‘ARR’.  

Time Limit: 1 sec
Sample Input 1:
2
4 4
1 1 0 0
0 0 1 0
0 0 0 1
0 0 0 1
2 2
1 0
1 1 
Sample Output 1:
4
3
Explanation for Sample Output 1:
In test case 1, The computer ‘ARR[0][0]’ is a connected computer because there is a computer in its row other than itself. The computer ‘ARR[0][1]’ is a connected computer because there is a computer in its row other than itself. The computer ‘ARR[1][2]’ is not a connected computer because there is no computer in its row and column other than itself. The computer ‘ARR[3][2]’ is a connected computer because there is a computer in its column other than itself. The computer ‘ARR[3][3]’ is a connected computer because there is a computer in its column other than itself.

Therefore the answer is 4.

In test case 2, The computer ‘ARR[0][0]’ is a connected computer because there is a computer in its column other than itself. The computer ‘ARR[1][0]’ is a connected computer because there is a computer in its row and column other than itself. The computer ‘ARR[1][1]’ is a connected computer because there is a computer in its row other than itself. 

Therefore the answer is 3.
Sample Input 2:
2
2 2
1 0
0 1 
2 2
1 1
1 1
Sample Output 2:
0
4
Explanation for Sample Output 2:
In test case 1, The computer ‘ARR[0][0]’ is not a connected computer because there is no computer in its row and column other than itself. Also The computer ‘ARR[1][1]’ is not a connected computer because there is no computer in its row and column other than itself.

Therefore the answer is 0.

In test case 2, All the four computers are connected computers as each computer has other computer in its row and colum both.

Therefore the answer is 4.
Full screen
Console