Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/18: Рейтинг темы: голосов - 18, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 07.10.2015
Сообщений: 37

Самое частое слово (код не проходит по времени)

22.10.2016, 15:12. Показов 3879. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача: Дан текст. Выведите слово, которое в этом тексте встречается чаще всего. Если таких слов несколько, выведите то, которое меньше в лексикографическом порядке.
Ввод: текст. Можно из файла.
Примеры:
1. Ввод: apple orange banana banana orange Вывод: banana
2. Ввод: q w e r t y u i o p (да, именно построчно) Вывод: a
a s d f g h j k l
z x c v b n m
Вопрос: Почему Я.Контест не принимает по времени (TL превышен лимит времени исполнения) и как можно исправить программу?
Код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
file = open("input.txt",'r')
text = file.readlines()
l_text = list()
for i in text:
    l_text += [j for j in i.split()]
s_text = set(l_text)
MyData = sorted(zip([l_text.count(w) for w in s_text], s_text), reverse=True)
for txt1 in MyData:
    if txt1[0] >= MyData[0][0]:
        ResData = txt1
file=open("output.txt","w")
file.write(ResData[1])
file.close()
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.10.2016, 15:12
Ответы с готовыми решениями:

Найти в тексте самое частое и самое длинное слово
Напишите программу, которая принимает текст и выводит два слова: наиболее часто встречающееся и самое длинное. входной данные строка

Самое частое слово
Дан текст: в первой строке задано число строк, далее идут сами строки. Выведите слово, которое в этом тексте встречается чаще всего. Если...

Самое частое слово в файле
Текстовый файл состоит из слов, записанных строчными буквами латинского алфавита, разделенных пробелами. Иных символов, кроме букв,...

5
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
22.10.2016, 15:58
Mon4ik, Потому что много бесполезного кода у тебя
Python
1
2
3
4
5
from collections import Counter
 
data = sum([i.split() for i in open("log.txt")], [])
with open("output.txt", "w") as out:
    out.write(sorted(Counter(data).most_common(2), key=lambda i: i[0][0])[-1][0])
0
1 / 1 / 0
Регистрация: 07.10.2015
Сообщений: 37
22.10.2016, 16:17  [ТС]
Ваша программа обваливается прям на первом тесте.

Добавлено через 6 минут
alex925, ваша программа не обработает второй пример и выдаст неправильный ответ.
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
22.10.2016, 16:20


Добавлено через 2 минуты
Цитата Сообщение от Mon4ik Посмотреть сообщение
Ввод: q w e r t y u i o p (да, именно построчно) Вывод: a
Как может быть вывод "а", когда среди символов ввода "а" даже нет?
1
1 / 1 / 0
Регистрация: 07.10.2015
Сообщений: 37
22.10.2016, 16:37  [ТС]
alex925, извините, видимо не очень понятно написала.
Ввод: q w e r t y u i o p
a s d f g h j k l
z x c v b n m
Вывод: а
0
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
22.10.2016, 21:27
Лучший ответ Сообщение было отмечено Mon4ik как решение

Решение

Python
1
2
3
4
5
from collections import Counter
 
data = open("input.txt").read().split()
with open("output.txt", "w") as out:
    out.write(sorted(Counter(data).items(), key=lambda x: (-x[1], x[0]))[0][0])
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.10.2016, 21:27
Помогаю со студенческими работами здесь

Как найти самое частое слово в списке?
Как найти самое частое СЛОВО в списке? С числами мне объяснили, а вот теперь как со словами?

Найти самое частое слово в массиве строк
Добрый день! Подскажите, пожалуйста! У нас есть массив слов, которые могут повторяться. Как мне найти самое часто повторяющееся слово? ...

Как во множестве строк определить самое частое слово из набора слов?
задача типа С4 ЕГЭ sms голосование разрешает прислать фамилию любимого певца.количество соискателей до 1000,всего может быть прислано 10...

Объяснение решения задачи "Самое частое слово"
Что здесь использовали? #include<iostream> #include<vector> #include<set> #include<algorithm> #include<string> ...

Код не проходит по времени
Добрый день. Ограничение по времени 1 сек. Мой проходит за 1.09, 1.075. Примерно так. Как оптимизировать? import sys n =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru