Finding the percentage in Python - Hacker Rank Solution

Problem

The provided code stub will read in a dictionary containing key/value pairs of name:[marks] for a list of students. Print the average of the marks array for the student name provided, showing 2 places after the decimal.


Example



The query_name is 'beta'. beta's average score is 50.0.


Input Format

The first line contains the integer , the number of students' records. The next  lines contain the names and marks obtained by a student, each value separated by a space. The final line contains query_name, the name of a student to query.


Output Format

Print one line: The average of the marks obtained by the particular student correct to 2 decimal places.


Sample Input 0

3
Krishna 67 68 69
Arjun 70 98 63
Malika 52 56 60
Malika


Sample Output 0

56.00


Explanation 

Marks for Malika are  whose average is 56.00 .


Sample Input 1

2
Harsh 25 26.5 28
Anurag 26 28 30
Harsh


Sample Output 1

26.50


Solution

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
if __name__ == '__main__':
    n = int(input())
    student_marks = {}
    for _ in range(n):
        name, *line = input().split()
        scores = list(map(float, line))
        student_marks[name] = scores
    query_name = input()
    
    count = 0.00
    for i in student_marks:
        if i == query_name:
            for i in student_marks[i]:
                count+=i
    a = count/3.00
    format_float = "{:.2f}".format(a)
    print(format_float)
Next Post Previous Post
No Comment
Add Comment
comment url