Monday 1 November 2021

Diagonal Difference || HackerRank C Programming Solution

Given a square matrix, calculate the absolute difference between the sums of its diagonals.

For example, the square matrix  is shown below:

1 2 3
4 5 6
9 8 9  

The left-to-right diagonal = . The right to left diagonal = . Their absolute difference is .

Function description

Complete the  function in the editor below.

diagonalDifference takes the following parameter:

  • int arr[n][m]: an array of integers

Return

  • int: the absolute diagonal difference

Input Format

The first line contains a single integer, , the number of rows and columns in the square matrix .
Each of the next  lines describes a row, , and consists of  space-separated integers .

Constraints

Output Format

Return the absolute difference between the sums of the matrix's two diagonals as a single integer.

Sample Input

3
11     2       4
4         5       6
10     8      -12

Sample Output

15

Explanation

The primary diagonal is:

11
         5
                -12

Sum across the primary diagonal: 11 + 5 - 12 = 4

The secondary diagonal is:

               4
         5
10

Sum across the secondary diagonal: 4 + 5 + 10 = 19
Difference: |4 - 19| = 15

Note: |x| is the absolute value of x

Solution:

#include<stdio.h>
int main()
{
    int n;
    scanf("%d",&n);
    int i,j,a[n][n],k=0,s=0;
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            if(i==j)
            {
                k=k+a[i][j];
            }
            if((i+j)==(n-1))
            {
                s=s+a[i][j];
            }
        }
    }
    int m;
    m=k-s;
    if(m<0)
    printf("%d",(-1)*m);
    else if(m>=0)
    printf("%d",m);
}

No comments:

Post a Comment

If you have any doubts, Please let me know....

Latest

Question 3: Wire {HDLBits-Verilog-Solutions}

  Welcome to  HDLBits -Verilog-Solutions ! --------------------------------------------------------------------------- Question 3:   Create ...

Popular Posts