Toeplitz matrix

PROBLEM :

A Toeplitz (or diagonal-constant) matrix is a matrix in which each descending diagonal from left to right is constant, i.e., all elements in a diagonal are same.
Given a matrix A of order N X M your task is to complete the function isToeplitz which returns true if the matrix is Toeplitz otherwise returns false.

Input:
The first line of input contains an integer T denoting the no of test cases .Then T test cases follow . Each test case contains two lines. The first line of each test case contains two integers N and M denoting the order of the matrix . Then in the next line are N*M space separated values of the matrix.

Output:
The output for each test case will be 1 if the matrix is Toeplitz else it will be 0.

Constraints:
1<=T<=50
1<=N,M<=40
1<=A[][]<=100

Example(To be used only for expected output):
Input
2
3 3
6 7 8 4 6 7 1 4 6
2 3
1 2 3 4 5 6
Output
1
0

Explanation
(i) The first test case represents a 3x3 matrix which looks like
     6 7  8
     4 6  7
     1 4  6
     Output: 1(True) as values in all diagonals are same.

(ii) In second test case matrix of order 2x3 will be
     1 2 3
     4 5 6
     Output: 0(False) as values in all diagonals are not same.

--------------------------------------------------------------------------------
SIMPLE c++ IMPLEMENTATION :
--------------------------------------------------------------------------------

/*You are required to complete this method*/

bool isToepliz(int A[MAX][MAX],int N,int M)
{
    int i,j ;
    for(i=1;i<N;i++)
    {
        for(j=1;j<M;j++)
        {
            if(A[i][j]!=A[i-1][j-1])
                return false ;
        }
    }
    return true ;
}

---------------------------------------------------------------------------------

Comments

Popular posts from this blog

Count ways to N'th Stair(Order does not matter)

Replace all ‘0’ with ‘5’ in an input Integer

Chocolate Distribution Problem

Remove characters from the first string which are present in the second string

Primality Test ( CodeChef Problem code: PRB01 )