We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
- Prepare
- Python
- Collections
- Company Logo
- Discussions
Company Logo
Company Logo
Sort by
recency
|
1290 Discussions
|
Please Login in order to post a comment
hi guies can use:
def count(s): s = sorted(s) count_letters = {} for char in s: count_letters[char] = count_letters.get(char, 0)+1 arr = sorted(count_letters.items(), key=lambda x: x[1] , reverse=True)
if name == 'main': count(input())
Did all the work in one line: s = Counter(sorted(list(input()))).most_common(3)
Still needed two lines to print the output: for i in s: print(i[0], i[1])
But basically the line takes the input(), puts the letters in a list, sorts them, then makes them a counter and takes the top 3 most common. Because the Counter takes the first from the list if the counts match, it is in alphabetical order as it counts.
Here is HackerRank Company Logo in python solution - https://programmingoneonone.com/hackerrank-company-logo-solution-in-python.html