Sunday, July 19, 2020

Introduction to Sets-HackerRank Solution

 Introduction to Sets-HackerRank Solution

  A set is an unordered collection of elements without duplicate entries.

When printed, iterated or converted into a sequence, its elements will appear in an arbitrary order.



>>> print set()
set([])

>>> print set('HackerRank')
set(['a', 'c', 'e', 'H', 'k', 'n', 'r', 'R'])

>>> print set([1,2,1,2,3,4,5,6,0,9,12,22,3])
set([0, 1, 2, 3, 4, 5, 6, 9, 12, 22])

>>> print set((1,2,3,4,5,5))
set([1, 2, 3, 4, 5])

>>> print set(set(['H','a','c','k','e','r','r','a','n','k']))
set(['a', 'c', 'r', 'e', 'H', 'k', 'n'])

>>> print set({'Hacker' : 'DOSHI', 'Rank' : 616 })
set(['Hacker', 'Rank'])

>>> print set(enumerate(['H','a','c','k','e','r','r','a','n','k']))
set([(6, 'r'), (7, 'a'), (3, 'k'), (4, 'e'), (5, 'r'), (9, 'k'), (2, 'c'), (0, 'H'), (1, 'a'), (8, 'n')])

Basically, sets are used for membership testing and eliminating duplicate entries.

Task

Now, let's use our knowledge of sets and help Mickey.

Ms. Gabriel Williams is a botany professor at District College. One day, she asked her student Mickey to compute the average of all the plants with distinct heights in her greenhouse.

Formula used:

Input Format

The first line contains the integer, , the total number of plants.
The second line contains the  space-separated heights of the plants.

Constraints

Output Format

Output the average height value on a single line.

Sample Input

10
161 182 161 154 176 170 167 171 170 174

Sample Output

169.375

Explanation

Here, set is the set containing the distinct heights. Using the sum() and len() functions, we can compute the average.

Average=1355/8=169.375


Introduction to Sets Solution

def average(array):
    # your code goes here
    return ((sum(set(arr)))/len(set(arr)))

if __name__ == '__main__':
    n = int(input())
    arr = list(map(int, input().split()))
    result = average(arr)
    print(result)

Explantion-

In average function, in order to find the average, we will find the unique element using set data structure and find the sum of it and later divide it with the length of set arr.


To read more about sets follow this link-https://www.geeksforgeeks.org/sets-in-python/

0 comments:

Post a Comment

Feel free to share your thoughts and suggestion...