Hello coders, today we are going to solve Eye and Identity HackerRank Solution in Python.
Objective
The identity tool returns an identity array. An identity array is a square matrix with all the main diagonal elements as 1 and the rest as 0. The default type of elements is float.
import numpy
print numpy.identity(3) #3 is for dimension 3 X 3
#Output
[[ 1. 0. 0.]
[ 0. 1. 0.]
[ 0. 0. 1.]]
The eye tool returns a 2-D array with 1‘s as the diagonal and 0‘s elsewhere. The diagonal can be main, upper or lower depending on the optional parameter k. A positive k is for the upper diagonal, a negative k is for the lower, and a 0 k (default) is for the main diagonal.
import numpy
print numpy.eye(8, 7, k = 1) # 8 X 7 Dimensional array with first upper diagonal 1.
#Output
[[ 0. 1. 0. 0. 0. 0. 0.]
[ 0. 0. 1. 0. 0. 0. 0.]
[ 0. 0. 0. 1. 0. 0. 0.]
[ 0. 0. 0. 0. 1. 0. 0.]
[ 0. 0. 0. 0. 0. 1. 0.]
[ 0. 0. 0. 0. 0. 0. 1.]
[ 0. 0. 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0. 0. 0.]]
print numpy.eye(8, 7, k = -2) # 8 X 7 Dimensional array with second lower diagonal 1.
Task
Your task is to print an array of size N X M with its main diagonal elements as 1‘s and 0‘s everywhere else.
Note
In order to get alignment correct, please insert the line numpy.set_printoptions(legacy=”1.13″) below the numpy import.
Input Format
A single line containing the space separated values of N and M.
N denotes the rows.
M denotes the columns.
Output Format
Print the desired N X M array.
Sample Input
3 3
Sample Output
[[ 1. 0. 0.]
[ 0. 1. 0.]
[ 0. 0. 1.]]
Solution – Eye and Identity in Python
import numpy print(str(numpy.eye(*map(int,input().split()))).replace('1',' 1').replace('0',' 0'))
Disclaimer: The above Problem (Eye and Identity) is generated by Hacker Rank but the Solution is Provided by CodingBroz. This tutorial is only for Educational and Learning Purpose.