Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Программирование python помогите пожалуйста!!

mrtcdg Ученик (98), на голосовании 7 месяцев назад
Напишите программу, которая найдет наиболее популярные места, возле которых прячутся червячки.

Формат ввода
В файле food.txt записаны буквы латинского алфавита в верхнем регистре.

Формат вывода
Выведите букву, которая чаще других стоит рядом с буквой W. Если таких несколько, то большую по алфавиту.
Голосование за лучший ответ
Malenkiuprinter Kpachemokoc Мастер (1716) 8 месяцев назад
 from collections import Counter 

def find_popular_spots(filename):
with open(filename, 'r') as file:
data = file.read().strip()

# Находим индексы буквы 'W' и собираем буквы рядом с ней
w_indices = [i for i, letter in enumerate(data) if letter == 'W']
nearby_letters = []
for index in w_indices:
if index > 0:
nearby_letters.append(data[index - 1])
if index < len(data) - 1:
nearby_letters.append(data[index + 1])

# Считаем количество каждой буквы, стоящей рядом с W
counter = Counter(nearby_letters)

# Сортируем буквы по частоте и, если частота одинакова, по алфавиту
sorted_letters = sorted(counter.items(), key=lambda x: (-x[1], x[0]))

# Возвращаем самую популярную букву
return sorted_letters[0][0]

if __name__ == "__main__":
filename = "food.txt"
result = find_popular_spots(filename)
print(result)
mrtcdgУченик (98) 8 месяцев назад
спасибо большое!
mrtcdgУченик (98) 8 месяцев назад
неправильный ответ(
Malenkiuprinter Kpachemokoc Мастер (1716) поправил
mrtcdgУченик (98) 8 месяцев назад
никак не получится исправить??
Похожие вопросы