# Check if sums of i-th row and i-th column are same in matrix

• Difficulty Level : Easy
• Last Updated : 15 Jun, 2022

Given a matrix mat[][], we have to check if the sum of i-th row is equal to the sum of i-th column or not.

Examples:

```Input : 1 2 3 4
9 5 3 1
0 3 5 6
0 4 5 6
Output : Yes
Sums of 1st row = 10 and 1st column
are same, i.e., 10```

Expected time complexity is O(m x n) where m is a number of rows and n is a number of columns.

The idea is really simple. We use a nested loop to calculate the sum of each row and column and then check whether their sum is equal or not.

The implementation of the above idea is given below.

## C++

 `#include ``using` `namespace` `std;``const` `int` `MAX = 100;` `// Function to check the if sum of a row``// is same as corresponding column``bool` `areSumSame(``int` `a[][MAX], ``int` `n, ``int` `m)``{``    ``int` `sum1 = 0, sum2 = 0;``    ``for` `(``int` `i = 0; i < n; i++) {``        ``sum1 = 0, sum2 = 0;``        ``for` `(``int` `j = 0; j < m; j++) {``            ``sum1 += a[i][j];``            ``sum2 += a[j][i];``        ``}``        ``if` `(sum1 == sum2)``            ``return` `true``;``    ``}``    ``return` `false``;``}` `// Driver Code``int` `main()``{``    ``int` `n = 4; ``// number of rows``    ``int` `m = 4; ``// number of columns``    ``int` `M[n][MAX] = { { 1, 2, 3, 4 },``                      ``{ 9, 5, 3, 1 },``                      ``{ 0, 3, 5, 6 },``                      ``{ 0, 4, 5, 6 } };``    ``cout << areSumSame(M, n, m) << ``"\n"``;``    ``return` `0;``}`

## Java

 `// Java program to check if there are two``// adjacent set bits.``public` `class` `GFG {``    ` `    ``// Function to check the if sum of a row``    ``// is same as corresponding column``    ``static` `boolean` `areSumSame(``int` `a[][],``                             ``int` `n, ``int` `m)``    ``{``        ``int` `sum1 = ``0``, sum2 = ``0``;``        ``for` `(``int` `i = ``0``; i < n; i++)``        ``{``            ``sum1 = ``0``;``            ``sum2 = ``0``;``            ``for` `(``int` `j = ``0``; j < m; j++)``            ``{``                ``sum1 += a[i][j];``                ``sum2 += a[j][i];``            ``}``            ` `            ``if` `(sum1 == sum2)``                ``return` `true``;``        ``}``        ` `        ``return` `false``;``    ``}``    ` `    ``// Driver code``    ``public` `static` `void` `main(String args[])``    ``{` `        ``int` `n = ``4``; ``// number of rows``        ``int` `m = ``4``; ``// number of columns``        ` `        ``int` `M[][] = { { ``1``, ``2``, ``3``, ``4` `},``                      ``{ ``9``, ``5``, ``3``, ``1` `},``                      ``{ ``0``, ``3``, ``5``, ``6` `},``                      ``{ ``0``, ``4``, ``5``, ``6` `} };``                        ` `        ``if``(areSumSame(M, n, m) == ``true``)``            ``System.out.print(``"1\n"``);``        ``else``            ``System.out.print(``"0\n"``);``    ``}``}` `// This code is contributed by Sam007.`

## Python3

 `# Python3 program to check the if``# sum of a row is same as``# corresponding column``MAX` `=` `100``;` `# Function to check the if sum``# of a row is same as``# corresponding column``def` `areSumSame(a, n, m):``    ``sum1 ``=` `0``    ``sum2 ``=` `0``    ``for` `i ``in` `range``(``0``, n):``        ``sum1 ``=` `0``        ``sum2 ``=` `0``        ``for` `j ``in` `range``(``0``, m):``            ``sum1 ``+``=` `a[i][j]``            ``sum2 ``+``=` `a[j][i]``        ` `        ``if` `(sum1 ``=``=` `sum2):``            ``return` `1``    ` `    ``return` `0` `# Driver Code``n ``=` `4``; ``# number of rows``m ``=` `4``; ``# number of columns``M ``=` `[ [ ``1``, ``2``, ``3``, ``4` `],``      ``[ ``9``, ``5``, ``3``, ``1` `],``      ``[ ``0``, ``3``, ``5``, ``6` `],``      ``[ ``0``, ``4``, ``5``, ``6` `] ]``      ` `print``(areSumSame(M, n, m))` `# This code is contributed by Sam007.`

## C#

 `// C# program to check if there are two``// adjacent set bits.``using` `System;` `class` `GFG {``    ` `    ``// Function to check the if sum of a row``    ``// is same as corresponding column``    ``static` `bool` `areSumSame(``int` `[,]a, ``int` `n, ``int` `m)``    ``{``        ``int` `sum1 = 0, sum2 = 0;``        ``for` `(``int` `i = 0; i < n; i++)``        ``{``            ``sum1 = 0;``            ``sum2 = 0;``            ``for` `(``int` `j = 0; j < m; j++)``            ``{``                ``sum1 += a[i,j];``                ``sum2 += a[j,i];``            ``}``            ` `            ``if` `(sum1 == sum2)``                ``return` `true``;``        ``}``        ` `        ``return` `false``;``    ``}``    ` `    ``// Driver code   ``    ``public` `static` `void` `Main ()``    ``{``        ``int` `n = 4; ``// number of rows``        ``int` `m = 4; ``// number of columns``        ` `        ``int` `[,] M = { { 1, 2, 3, 4 },``                      ``{ 9, 5, 3, 1 },``                      ``{ 0, 3, 5, 6 },``                      ``{ 0, 4, 5, 6 } };``                      ` `        ``if``(areSumSame(M, n, m) == ``true``)``            ``Console.Write(``"1\n"``);``        ``else``            ``Console.Write(``"0\n"``);``    ``}``}` `// This code is contributed by Sam007.`

## PHP

 ``

## Javascript

 ``

Output:

`1`

Time Complexity: O(n x m)
Auxiliary Space: O(1)

This article is contributed by Aarti_Rathi and Sarthak Kohli. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.