Решение 24 задания через разбивку на слова |
||
МЕНЮ Главная страница Поиск Регистрация на сайте Помощь проекту Архив новостей ТЕМЫ Новости ИИ Голосовой помощник Разработка ИИГородские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Искусственный интеллект Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Психология ИИ Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Творчество ИИ Техническое зрение Чат-боты Авторизация |
2023-03-08 17:03 На данный способ помимо здравого смысла указывает и кодификатор, в приложении к которому указано следующее: "Алгоритмы анализа символьных строк, в том числе: подсчёт количества появлений символа в строке; разбиение строки на слова по пробельным символам; поиск подстроки внутри данной строки; замена найденной подстроки на другую строку". Посмотрим несколько примеров на заданиях с сайта К.Ю.Полякова. 4924 Текстовый файл 24-197.txt содержит строку из заглавных латинских букв X, Y и Z, всего не более чем из 10^6 символов. Определите максимальное количество идущих подряд троек символов ZXY или ZYX. Алгоритм: 1) заменяем ZXY И ZYX на символ, которого нет в файле (например 1), 2) заменяем все оставшиеся допустимые символы на пробелы, 3) разделяем строку на слова и ищем максимальную длину. 4917 Текстовый файл 24-191.txt содержит строку из заглавных латинских букв, всего не более чем из 10^6 символов. Определите количество подстрок длиной не менее 20 символов, которые начинаются буквой A, заканчиваются буквой B и не содержат других букв A и B, кроме первой и последней. Алгоритм: 1) Ставим пробелы перед А и после В. 2) Разделяем строку на слова и фильтруем слова по условию (начало А, конец В). 3) Находим количество. 4753 Текстовый файл 24-181.txt содержит строку из заглавных латинских букв и точек, всего не более 10^6 символов. Определите максимальное количество идущих подряд символов, среди которых нет гласных букв (символов A, E, I, O, U, Y), но есть не менее 6 точек. Алгоритм: 1) Заменяем A, E, I, O, U, Y на пробелы, 2) Разбиваем строку на слова и фильтруем по условию, 3) Находим максимальную длину. 4524 Текстовый файл 24-181.txt содержит строку из заглавных латинских букв и точек, всего не более 10^6 символов. Определите максимальное количество идущих подряд символов, среди которых не более одной точки. Алгоритм: 1) Разбиваем строку на слова по символу точки и определяем длины получившихся слов, 2) Находим максимальную сумму длин двух рядом стоящих слов, 3) Добавляем 1 (точка между) 2715 Текстовый файл 24-j7.txt состоит не более чем из 10^6 десятичных цифр. Найдите максимальную длину последовательности, которая состоит из цифр одинаковой четности. Например, в последовательности 1533244622185452354, 5 последовательностей с нечетными цифрами: 1533, 1, 5, 5, 35; и 5 с четными: 244622, 8, 4, 2, 4. Следовательно, искомая последовательность – 244622. В качестве ответа укажите максимальную длину найденной последовательности. Алгоритм: 1) Переберем все рядом стоящие пары, если в паре четность элементов разная, то добавим в накапливаемый список второй элемент с предшествующим пробелом, 2) Соединим полученный список в строку и разобьем её по пробелам, 3) найдем максимальную длину полученных слов. 3750 Текстовый файл 24-157.txt состоит не более чем из 10^6 символов и содержит только заглавные буквы латинского алфавита (ABC…Z). Определите символ, который чаще всего встречается в файле между двумя одинаковыми символами. Например, в тексте CCBAABABCBC есть комбинации ABA, BAB, BCB и CBC. Чаще всего – 2 раза – между двумя одинаковыми символами стоит B, в ответе для этого случая надо написать B2 (без пробелов и других разделителей). Если таких символов несколько, выведите тот, который стоит раньше в алфавите. Алгоритм: 1) Перебираем тройки символов и сохраняем нужные средние, 2) Сортируем найденные символы и вставляем пробел между разными, 3) Соединяем в строку, бьем по пробелу и сортируем по убыванию длины и возрастанию символа, 4) Выводим первый символ первого слова и его длину. Источник: vk.com Комментарии: |
|