задано число строк, далее идут сами строки. Выведите слово, которое в этом тексте встречается чаще всего. Если таких слов несколько, выведите то, которое меньше в лексикографическом порядке.
И вот код-решение:
n = int(input())
for i in range(n):
a=input().split()
for word in range (n):
if counter[word]==counter.get(word,0)+1
print(counter[maxword])
maxw=max(counter.values())
Может кто объяснить, как работает и зачем в строке if counter[word]==counter.get(word,0)+1
0 и +1?
Так ты может код покажешь весь?
Это и есть весь код, который предложили как ответ. Точнее вот исходник-исходник: counter = {} for i in range(int(input())): line = input().split() for word in line: counter[word] = counter.get(word, 0) + 1 max_count = max(counter.values()) most_frequent = [k for k, v in counter.items() if v == max_count] print(min(most_frequent)) (http://pythoshka.ru/p263.html)
words = [input() for i in range(int(input()))] print(max(words, key=words.count)) Не уверен, что оно работает, но можешь попробовать такой вариант, с телефона набираю просто
Обсуждают сегодня