HackerRank Python Solution - Numpy Topic - Concatenate

Concatenate:

Two or more arrays can be concatenated together using the concatenate function with a tuple of the arrays to be joined:

import numpy

array_1 = numpy.array([1,2,3])
array_2 = numpy.array([4,5,6])
array_3 = numpy.array([7,8,9])

print numpy.concatenate((array_1, array_2, array_3))    

#Output
[1 2 3 4 5 6 7 8 9]

If an array has more than one dimension, it is possible to specify the axis along which multiple arrays are concatenated. By default, it is along the first dimension

import numpy

array_1 = numpy.array([[1,2,3],[0,0,0]])
array_2 = numpy.array([[0,0,0],[7,8,9]])

print numpy.concatenate((array_1, array_2), axis = 1)   

#Output
[[1 2 3 0 0 0]
 [0 0 0 7 8 9]]    
Task:

You are given two integer arrays of size NxP and MxP (N&M are rows, and P is the column). Your task is to concatenate the arrays along axis 0.

Input Format:

The first line contains space-separated integers N, M, and P. The next N lines contain the space-separated elements of the P columns. After that, the next M lines contain the space-separated elements of the P columns.

Output Format:

Print the concatenated array of size (N + M) x P.

Sample Input:
4 3 2
1 2
1 2 
1 2
1 2
3 4
3 4
3 4 
Sample Output:

[[1 2]
 [1 2]
 [1 2]
 [1 2]
 [3 4]
 [3 4]
 [3 4]] 
Solution:
import numpy as np

n,m,p = map(int,input().split())

arr1 = np.array([input().split() for _ in range(n)],int)
arr2 = np.array([input().split() for _ in range(m)],int)

print(np.concatenate((arr1,arr2),axis=0))
  
Disclaimer: The problem statement is given by hackerrank.com but the solution is generated by the Geek4Tutorial admin. If there is any concern regarding this post or website, please contact us using the contact form. Thank you!

No comments:

Post a Comment

You might also like

Deploy your Django web app to Azure Web App using App Service - F1 free plan

In this post, we will look at how we can deploy our Django app using the Microsoft Azure app service - a free plan. You need an Azure accoun...