Задача была считать строки и найти слова, которые чаще всего встречаются в тексте. Слова и их количество я нашёл. Теперь у меня есть список кортежей где 0 элемент - это количество слов, 1 элемент - само слово. Как ни пытался отсортировать, не сходится с ответом.
Вот мой код:
N = int(input())
r = {}
for i in range(N):
s = input().split()
for j in s:
r.setdefault(j, 0)
r[j] += 1
res = [(v, k) for k, v in r.items()]
print('\n'.join(map(lambda x: x[1], sorted(res, reverse=True))))
Что я делаю неправильно ?