|
1296 / 470 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
|
|||||||||||
Поиск наиболее часто встречающейся подстроки в строке31.10.2014, 15:05. Показов 12567. Ответов 57
Метки нет (Все метки)
Прошло уже немало лет с тех пор, как Лич Сандро ушёл на заслуженный отдых. Иногда по вечерам, когда ему становится совсем тоскливо, он берёт в руки книгу, которую ему подарили воспитанники-маги по случаю выхода на пенсию.
Вот и сейчас великий маг взял с полки книгу и углубился в чтение. В одной из глав рассказывалось про знаменитое открытие Сандро — много лет назад он придумал универсальное заклинание. Оказалось, что любая его подстрока (последовательность подряд идущих букв) тоже является заклинанием, а сила любого заклинания равна количеству раз, которое это заклинание встречается в универсальном (например, строка «ue» встречается в строке «queue» дважды, а строка «aba» в строке «abababa» — трижды). Сейчас у Сандро много свободного времени, и он решил найти самое сильное заклинание. Помогите ему в этом. Исходные данные Единственная строка содержит универсальное заклинание, которое открыл Сандро. Заклинание — непустая строка из строчных латинских букв длиной не более 50. Результат Выведите любое из заклинаний, обладающих, по мнению Сандро, наибольшей силой. Пример
актуально
0
|
|||||||||||
| 31.10.2014, 15:05 | |
|
Ответы с готовыми решениями:
57
Вывести слово, наиболее часто встречающееся в строке Определить наиболее часто встречающийся символ в строке |
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 31.10.2014, 21:22 | |
|
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|
| 01.11.2014, 02:17 | |
|
0
|
|
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 01.11.2014, 02:25 | |
|
Mr.X, строка aba встречается 3 раза в строке abababa, здесь не сказано, что это - ответ, это сказано для того чтобы было понятно, как считать количество вхождений одной строки в другую.
0
|
|
| 01.11.2014, 02:29 | |
|
Но все же, хоть задача и сформулирована криво, и решение в виде одного символа всегда будет одним из максимальных, можно нормально переформулировать задачу, чтобы стало интересно ее решать - и не искать один символ, а длинную подпоследовательность.
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 01.11.2014, 02:31 | ||
|
У меня мышление сугубо математическое, поэтому мне сложно понять такие вещи.
0
|
||
| 01.11.2014, 02:38 | |
|
Mr.X, не кипятитесь. На нормальном математическом форуме за такую формулировку и такими примерами задачу отправляют в подраздел "карантин" на исправление, а на задачи типа "продолжите ряд 1,2,3,4,5,?" отвечают "42". Но мы то на форуме, где люди в цикле проверяют делимость соседних чисел на 7
Если вы такой математик - приглашаю вас в свои темы "поиск оптимального маршрута" и "победить Фарроу" - сможете там профессионально реализоваться.
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 01.11.2014, 02:46 | ||
|
0
|
||
| 01.11.2014, 02:51 | |
|
Первая - чистая программистская алгоритмика на графах, вторая - больше математика, но с программистскими приемами оптимизации. И выбирайте интересные темы/задачи, это все лучше, чем критиковать спорные формулировки. SlavaSSU молодец - он решил задачу в рамках условий, увидел брешь в формулировке. В иных задачах это может быть сделано даже специально.
0
|
|
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 01.11.2014, 02:57 | |
|
_Ivana, Mr.X, вот вам олимпиадная задачка по проге с уклоном в матику и простым условием.
дано натуральное число k <= 10^9. найдите все такие упорядоченные пары (a, b), (a > 0, b > 0, b <= 10^18, a <= 10^18), такие что сумма чисел в этой паре ровно в к раз меньше чем произведение чисел в паре. Эта задачка была на соревновании, надеюсь никто не будет ругаться(надеюсь, тут никого нет, кто писал это соревнование xD). Формат ввода: одно число k(k > 0 && k <= 10^9); Формат вывода: выведите все пары, удовлетворяющие условию. Примеры: input: 1 output: 2 2 Еще один input: 2 output:3 6 6 3 4 4
0
|
|
| 01.11.2014, 03:56 | ||||||
|
Наспех, недошлифовано, иногда дублит (можно вылечить) и однозначно неоптимальная факторизация (нужно вылечить), но должно работать:
Эх, не дождался SlavaSSU, а я спешил недокод выложить.... Ладно займусь шлифовкой
0
|
||||||
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 01.11.2014, 04:10 | |
|
_Ivana, я тут пока. ты можешь кинуть готовую прогу? с чтением из консоли и выводом в консоль? я могу протестить в системе.
0
|
|
| 01.11.2014, 04:17 | ||||||
|
SlavaSSU, Ну вот выше код, можешь потестить, будет интересно правильно и все ли я нахожу или нет
Если надо вылизанный и без дублей, то вот (но факторизацию конечно надо оптимизировать, хотя и так быстро считает, но с оптимизированной факторизацией будет и в длинной арифметике летать ):
А то я забыл, нечасто с файловым вводом/выводом сталкиваюсь, да и вообще ![]() Добавлено через 4 минуты ЗЫ такое ощущение, что завтра длинные выходные и праздники - всю ночь сидим
0
|
||||||
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 01.11.2014, 04:21 | |
|
_Ivana, неправильный ответ на тесте 3
а не не стой. я накосячил UPD: эх, неправильный ответ на тесте номер 3 все таки.(
0
|
|
| 01.11.2014, 04:25 | |
|
Замечательно, а какое там входящее k неизвестно? А то так трудно исправлять. И, кстати, про упорядоченность пар непонятно - я вывожу ответы в хаотичном порядке, как получится - может в этом дело? Но и в их примерах я никакой упорядоченности не обнаружил
![]() Добавлено через 1 минуту У меня на 2 выводит 4 4 6 3 3 6 А как надо, если порядок важен? Сейчас перепорядочу
0
|
|
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 01.11.2014, 04:27 | |
|
не, не в этом дело. щас тест поищу руками. там порядок не важен.
0
|
|
| 01.11.2014, 04:30 | |
|
Скажи тогда какое там k - устыжусь и попробую доработать. Хотя я самоуверен насчет алгоритма и не вижу где он может дать сбой, разве что ошибка реализации... И факторизация у меня тупая и дубовая, но надежная - там нечему сбоить вроде.
0
|
|
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 01.11.2014, 04:31 | |
|
_Ivana, все нашел.
k == 720 ответ - 135 пар, у тебя выводит только 31.
0
|
|
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 01.11.2014, 04:38 | |
|
_Ivana, лучше на поменьше тест
k == 12 вывод твоей проги: 7 13 156 16 48 18 36 24 24 36 18 48 16 156 13 правильный ответ: 15 13 156 14 84 15 60 16 48 18 36 20 30 21 28 24 24 28 21 30 20 36 18 48 16 60 15 84 14 156 13
0
|
|
| 01.11.2014, 04:40 | ||||||
|
SlavaSSU, попробуй так:
Так конечно совсем неоптимизированно, но зато добавляет недостающие пары.Добавлено через 2 минуты ЗЫ но похоже, добавляет не все еще пары... сейчас попробую понять где ошибка, но может не смогу - утро уже
0
|
||||||
| 01.11.2014, 04:40 | |
|
Вывести слово, наиболее часто встречающееся в строке Поиск наиболее часто встречающихся слов
Поиск наиболее часто встречаемого слова на сайте Поиск наиболее часто встречающихся слов в файле Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов.
Логика кажется понятной:
1. Находим ключевые слова.
2. Добавляем их на. . .
|
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302
Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
|