Collections.OrderedDict() in Python - HackerRank Solution
Problem :
collections.OrderedDict
An OrderedDict is a dictionary that remembers the order of the keys that were
inserted first. If a new entry overwrites an existing entry, the original
insertion position is left unchanged.
Example
Code :
>>> from collections import OrderedDict >>> >>> ordinary_dictionary = {} >>> ordinary_dictionary['a'] = 1 >>> ordinary_dictionary['b'] = 2 >>> ordinary_dictionary['c'] = 3 >>> ordinary_dictionary['d'] = 4 >>> ordinary_dictionary['e'] = 5 >>> >>> print ordinary_dictionary {'a': 1, 'c': 3, 'b': 2, 'e': 5, 'd': 4} >>> >>> ordered_dictionary = OrderedDict() >>> ordered_dictionary['a'] = 1 >>> ordered_dictionary['b'] = 2 >>> ordered_dictionary['c'] = 3 >>> ordered_dictionary['d'] = 4 >>> ordered_dictionary['e'] = 5 >>> >>> print ordered_dictionary OrderedDict([('a', 1), ('b', 2), ('c', 3), ('d', 4), ('e', 5)])
Task :
You are the manager of a supermarket.You have a list of N items together with their prices that consumers bought on a particular day.
Your task is to print each item_name and net_price in order of its first occurrence.
item_name = Name of the item.
net_price = Quantity of the item sold multiplied by the price of each item.
Input Format :
The first line contains the number of items, N.
The next N lines contains the item's name and price, separated by a space.
Constraints :
- 0 < N <= 100
Output Format :
Print the item_name and net_price in order of its first occurrence.
Sample Input :
9 BANANA FRIES 12 POTATO CHIPS 30 APPLE JUICE 10 CANDY 5 APPLE JUICE 10 CANDY 5 CANDY 5 CANDY 5 POTATO CHIPS 30
Sample Output :
BANANA FRIES 12 POTATO CHIPS 60 APPLE JUICE 20 CANDY 20
Explanation :
Net Price: 12
POTATO CHIPS: Quantity bought: 2, Price: 30
Net Price:
APPLE JUICE: Quantity bought: 2, Price: 10
Net Price: 20
CANDY: Quantity bought: 4, Price: 5
Net Price:20
Solution :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | # Collections.OrderedDict() in Python - Hacker Rank Solution # Python 3 # Enter your code here. Read input from STDIN. Print output to STDOUT # Collections.OrderedDict() in Python - Hacker Rank Solution START from collections import*; N = int(input()); d = OrderedDict(); for i in range(N): item = input().split() itemPrice = int(item[-1]) itemName = " ".join(item[:-1]) if(d.get(itemName)): d[itemName] += itemPrice else: d[itemName] = itemPrice for i in d.keys(): print(i, d[i]) # Collections.OrderedDict() in Python - Hacker Rank Solution END |
Disclaimer :-
the above hole problem statement is given by hackerrank.com but the solution is generated by the codeworld19 authority if any of the query regarding this post or website fill the following contact form thank you.