Skip to content
the poor coder

Hackerrank Array Mathematics Solution

Poor Man
Published
Updated
Reading time
3 min read

Basic mathematical functions operate element-wise on arrays. They are available both as operator overloads and as functions in the NumPy module.

Text
import numpy

a = numpy.array([1,2,3,4], float)
b = numpy.array([5,6,7,8], float)

print a + b                     #[  6.   8.  10.  12.]
print numpy.add(a, b)           #[  6.   8.  10.  12.]

print a - b                     #[-4. -4. -4. -4.]
print numpy.subtract(a, b)      #[-4. -4. -4. -4.]

print a * b                     #[  5.  12.  21.  32.]
print numpy.multiply(a, b)      #[  5.  12.  21.  32.]

print a / b                     #[ 0.2         0.33333333  0.42857143  0.5       ]
print numpy.divide(a, b)        #[ 0.2         0.33333333  0.42857143  0.5       ]

print a % b                     #[ 1.  2.  3.  4.]
print numpy.mod(a, b)           #[ 1.  2.  3.  4.]

print a**b                      #[  1.00000000e+00   6.40000000e+01   2.18700000e+03   6.55360000e+04]
print numpy.power(a, b)         #[  1.00000000e+00   6.40000000e+01   2.18700000e+03   6.55360000e+04]

Task

You are given two integer arrays,  and  of dimensions X.
Your task is to perform the following operations:

  1. Add ( + )
  2. Subtract ( - )
  3. Multiply ( * )
  4. Integer Division ( / )
  5. Mod ( % )
  6. Power ( ** )

Input Format

The first line contains two space separated integers,  and .
The next  lines contains  space separated integers of array .
The following  lines contains  space separated integers of array .

Output Format

Print the result of each operation in the given order under Task.

Sample Input

Text
1 4
1 2 3 4
5 6 7 8

Sample Output

Text
[[ 6  8 10 12]]
[[-4 -4 -4 -4]]
[[ 5 12 21 32]]
[[0 0 0 0]]
[[1 2 3 4]]
[[    1    64  2187 65536]] 

Use // for division in Python 3.

Solution in python3#

Approach 1.

Python
import numpy
n,m = map(int,input().split())
a = numpy.array([input().split() for _ in range(n)],int)
b = numpy.array([input().split() for _ in range(n)],int)
print(a+b,a-b,a*b,a//b,a%b,a**b,sep="\n")

Approach 2.

Python
import numpy
n,m=map(int,input().split())
A=numpy.array([list(map(int,input().split())) for i in range(n)])
B=numpy.array([list(map(int,input().split())) for i in range(n)])
print(A+B,A-B,A*B,A//B,A%B,A**B,sep='\n')

Approach 3.

Python
from numpy import *
n,m = map(int,input().split())
a = array([[int(x) for x in input().split()] for _ in range(n)],int)
b = array([[int(x) for x in input().split()] for _ in range(n)],int)
print(a+b,a-b,a*b,a//b,a%b,a**b,sep = '\n')

Solution in python#

Python
import numpy
N, M= map(int, raw_input().split())
A = numpy.array([map(int, raw_input().split()) for i in range(N)])
B = numpy.array([map(int, raw_input().split()) for i in range(N)])
print A+B
print A-B
print A*B
print A / B
print A % B
print A**B

Keep going

2020

Hackerrank Mean, Var, and Std Solution

mean The mean tool computes the arithmetic mean along the specified axis. By default, the axis is None. Therefore, it computes the mean of the flattened array. var The var tool computes the arithmetic variance along the…

2020

Hackerrank Polynomials Solution

poly The poly tool returns the coefficients of a polynomial with the given sequence of roots. roots The roots tool returns the roots of a polynomial with the given coefficients. polyint The polyint tool returns an…

2020

Hackerrank Linear Algebra Solution

The NumPy module also comes with a number of built-in routines for linear algebra calculations. These can be found in the sub-module linalg. linalg.det The linalg.det tool computes the determinant of an array…

ESC