Zipped! in Python | HackerRank Solution

Hello coders, today we are going to solve Zipped! HackerRank Solution in Python.

Zipped! in Python

Objective

zip([iterable, …])

This function returns a list of tuples. The th tuple contains the th element from each of the argument sequences or iterables.

If the argument sequences are of unequal lengths, then the returned list is truncated to the length of the shortest argument sequence.

Sample Code

>>> print zip([1,2,3,4,5,6],'Hacker')
[(1, 'H'), (2, 'a'), (3, 'c'), (4, 'k'), (5, 'e'), (6, 'r')]
>>> 
>>> print zip([1,2,3,4,5,6],[0,9,8,7,6,5,4,3,2,1])
[(1, 0), (2, 9), (3, 8), (4, 7), (5, 6), (6, 5)]
>>> 
>>> A = [1,2,3]
>>> B = [6,5,4]
>>> C = [7,8,9]
>>> X = [A] + [B] + [C]
>>> 
>>> print zip(*X)
[(1, 6, 7), (2, 5, 8), (3, 4, 9)]

Task

The National University conducts an examination of N students in X subjects.
Your task is to compute the average scores of each student.

Average Score = Sum of Scores obtained in all subjects by a student / Total number of students

The format for the general mark sheet is:

Student ID → ___1_____2_____3_____4_____5__               
Subject 1   |  89    90    78    93    80
Subject 2   |  90    91    85    88    86  
Subject 3   |  91    92    83    89    90.5
            |______________________________
Average        90    91    82    90    85.5 

Input Format

The first line contains N and X separated by a space.
The next X lines contains the space separated marks obtained by students in a particular subject.

Output Format

Print the averages of all students on separate lines.

The averages must be correct up to 1 decimal place.

Sample Input

5 3
89 90 78 93 80
90 91 85 88 86  
91 92 83 89 90.5

Sample Output

90.0 
91.0 
82.0 
90.0 
85.5       

Explanation

Marks obtained by student 189, 90, 91
Average marks of student 1:
270/3 = 90

Marks obtained by student 2: 90, 91, 92 
Average marks of student 2:
273/3 = 91

Marks obtained by student 3: 78, 85, 83 
Average marks of student 3:
246/3 = 82

Marks obtained by student 4: 93, 88, 89
Average marks of student 4:
270/3 = 90

Marks obtained by student 5: 80, 86, 90.5 
Average marks of student 5:
256.5/3 = 85.5

Solution – Zipped! in Python

# Enter your code here. Read input from STDIN. Print output to STDOUT
N, X = input().split()

io = list()

for _ in range(int(X)):
    ip = map(float, input().split())
    io.append(ip)

for i in zip(*io): 
    print( sum(i)/len(i) ) 

Disclaimer: The above Problem (Zipped!) is generated by Hacker Rank but the Solution is Provided by CodingBroz. This tutorial is only for Educational and Learning Purpose.

Leave a Comment

Your email address will not be published. Required fields are marked *