|
4 / 6 / 1
Регистрация: 16.04.2022
Сообщений: 139
|
||||||
Найти самую короткую подстроку, являющуюся палиндромом07.09.2023, 00:30. Показов 2544. Ответов 18
Метки нет (Все метки)
Ограничение времени 1 секунда
Ограничение памяти 512Mb Аркадий — большой фанат использования машинного обучения в любой задаче. Он верит в безграничную силу волшебства этой популярной молодой науки. Именно поэтому Аркадий постоянно постоянно придумывает всё новые и новые факторы, которые можно вычислить для различных объектов. Напомним, палиндромом называется строка, которая одинаково читается от начала к концу и от конца к началу. Для каждой строки в своей базе данных Аркадий хочет найти самую короткую её подстроку, состоящую хотя бы из двух символов и являющуюся палиндромом. Если таких подстрок несколько, Аркадий хочет выбрать лексикографически минимальную. ============================== Формат ввода В единственной строке входных данных записана одна строка из базы Аркадия — непустая последовательность строчных букв английского алфавита. Длина строки составляет не менее 2 и не превосходит 200000 символов. ============================== Формат вывода: Выведите минимальную по длине подстроку строки из входных данных, состоящую хотя бы из двух символов и являющуюся палиндромом. Напомним, что среди всех таких строк Аркадий хочет найти лексикографически минимальную. ======================================== ==================== Подстрокой называется непрерывная подпоследовательность букв строки. Например, «aba», «c», «baca», «abacaba» являются подстроками строки «abacaba», а «bc», «abaaba», «d» — нет. Говорят, что строка a=a1a2…an лексикографически меньше строки b=b1b2…bm, если верно одно из двух условий:либо n<m и a1=b1,a2=b2,…,an=bn, то есть первая строка является префиксом второй;либо есть такая позиция 1≤i≤min(n,m), что a1=b1,a2=b2…,ai−1=bi−1 и ai<bi, то есть в первой позиции, в которой строки различаются, в первой строке стоит меньшая буква. У меня такой код, но на 22 тесте (неизвестно что за тест) обрывается по времени. что делать?
0
|
||||||
| 07.09.2023, 00:30 | |
|
Ответы с готовыми решениями:
18
Определить самую длинную подстроку, являющуюся особой строкой
Найти самую длинную неповторяющуюся подстроку |
|
44 / 31 / 13
Регистрация: 19.12.2022
Сообщений: 107
|
||||||
| 07.09.2023, 11:50 | ||||||
Сообщение было отмечено NebraskKrasnod как решение
Решение
Матрица должна дать буст по времени.
1
|
||||||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 07.09.2023, 12:26 | |
|
RockSun, лучший буст - норм алгос
0
|
|
|
Status 418
|
|
| 07.09.2023, 13:41 | |
Сообщение было отмечено NebraskKrasnod как решение
Решение
зачем такие сложности?!
просто ищем палиндромы длины 2, если таких нет ищем палиндромы длины 3, если и таких нет выводим -1. или я что то задачу неправильно понял...?
4
|
|
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
||
| 07.09.2023, 14:27 | ||
|
Добавлено через 44 секунды А не, все четные проверять надо
0
|
||
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
|
| 07.09.2023, 14:28 | |
|
eaa, ступил, слона не заметил
0
|
|
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 07.09.2023, 15:30 | |
|
eaa, иди ищем палиндром просто обычный, если длина чет, то выводим середину из 2х знаков, а если нечет, то середину из 3х
0
|
|
|
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,706
|
||||||
| 07.09.2023, 15:53 | ||||||
0
|
||||||
|
44 / 31 / 13
Регистрация: 19.12.2022
Сообщений: 107
|
|||||||||||
| 07.09.2023, 17:31 | |||||||||||
|
Я там немного ошибся, поменять нужно
0
|
|||||||||||
|
4 / 6 / 1
Регистрация: 16.04.2022
Сообщений: 139
|
||
| 07.09.2023, 21:45 [ТС] | ||
|
На тесте "yandex", должно выводить "-1", а у тебя выводит "y" Добавлено через 4 минуты к сожалению ошибка на неизвестном тесте, idealist. я думаю такой сделать алгоритм: Пусть существует какая-то подстрока, являющаяся палиндромом. Если мы уберём первый и последний символ палиндрома, оставшаяся строка тоже будет палиндромом. Будем повторять процесс до тех пор, пока не останется строка из двух или трёх букв (в зависимости от чётности). Подстрок длины два или три всегда линейное количество, и суммарная их длина также линейна, поэтому среди таких строк ответ можно выбрать наивным алгоритмом. Если же ни одна из подстрок такой длины не является палиндромом, то выведем -1.
0
|
||
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
|
| 07.09.2023, 21:50 | |
|
NebraskKrasnod, да, такой алгоритм залетит со свистом. Остается реализовать)
1
|
|
|
4 / 6 / 1
Регистрация: 16.04.2022
Сообщений: 139
|
|
| 07.09.2023, 21:52 [ТС] | |
|
а как реализовать чтоб хорошо было
0
|
|
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||
| 07.09.2023, 22:10 | ||
|
https://ai-news.ru/2018/02/yan... chiko.html Не твой алгоритм, а так, за тебя все разжевано, осталось только написать
2
|
||
|
4 / 6 / 1
Регистрация: 16.04.2022
Сообщений: 139
|
||||||
| 07.09.2023, 22:59 [ТС] | ||||||
0
|
||||||
|
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,706
|
|||||||
| 07.09.2023, 23:05 | |||||||
0
|
|||||||
|
44 / 31 / 13
Регистрация: 19.12.2022
Сообщений: 107
|
|
| 07.09.2023, 23:12 | |
|
NebraskKrasnod, так ты прочитал то что я после дописал? Замени строчку в моём коде
0
|
|
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||||||
| 08.09.2023, 07:13 | ||||||
Сообщение было отмечено NebraskKrasnod как решение
Решение
RockSun, не сработает с яндексом юзайте срезы
Добавлено через 3 минуты
1
|
||||||
|
4 / 6 / 1
Регистрация: 16.04.2022
Сообщений: 139
|
|
| 08.09.2023, 21:25 [ТС] | |
|
0
|
|
| 08.09.2023, 21:25 | |
|
Помогаю со студенческими работами здесь
19
Найдите лексикографически наибольшую подпоследовательность, являющуюся палиндромом
Найти самую короткую подстроку являющуюся палиндромом Найти максимальную подстроку являющуюся палиндромом Функция, которая в заданной строке ищет подстроку, являющуюся палиндромом Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
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
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|