Текстовый файл состоит не более чем из \(10^6\) символов и содержит только заглавные буквы латинского алфавита (ABC…Z). Текст разбит на строки различной длины. Необходимо найти строку, содержащую наименьшее количество букв A (если таких строк несколько, надо взять ту, которая в файле встретилась раньше). Определите, какая буква встречается в этой строке чаще всего. Если таких букв несколько, надо взять ту, которая стоит позже в алфавите. Запишите в ответе эту букву, а затем – сколько раз она встречается во всем файле.
Пример. Исходный файл:
ZZQAQ ZAVLAB KRAKTU
В этом примере в первой и третьей строках по одной букве A, во второй – две. Берём первую строку, т.к. она находится в файле раньше. В этой строке чаще других встречаются буквы Z и Q (по два раза), выбираем букву Z, т. к. она позже стоит в алфавите. В ответе для этого примера надо записать Z3, так как во всех строках файла буква Z встречается \(3\) раза.
Решение:
Python
m = float('inf')
stmp = ''
for line in open('3781.txt'):
t = line.count('A')
if t < m:
m = t
stmp += line
ch = {}
for c in stmp:
ch[c] = ch.get(c, 0) + 1
m = max(ch.values())
ch = sorted([c for c in ch if ch[c] == m])
ans = 0
for line in open('3781.txt'):
ans += line.count(ch[-1])
print(f'{ch[-1]}{ans}')
Ответ: \(V38429\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене