|
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874
|
|
Найти в строке string наиболее часто встречающуюся пару символов и заменить на один новый символ31.08.2010, 20:32. Показов 6024. Ответов 17
Метки нет (Все метки)
нужно найти в строке пару символов, которые повторяются чаще всех и заменить их на один новый символ например acfghhachfjiac "ac" заменить на "X" и чтобы в итоге вышло XfghhXhfjiX
как считать строку из файла в стринг, если она содержит пробелы (нужно считать из файла строку с пробелами)
0
|
|
| 31.08.2010, 20:32 | |
|
Ответы с готовыми решениями:
17
Найти наиболее часто встречающуюся букву и также вывести на экран в отдельной строке |
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 31.08.2010, 20:39 | ||||||
|
Mayonez, 2
1
|
||||||
|
Заблокирован
|
||||||
| 31.08.2010, 20:45 | ||||||
0
|
||||||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 31.08.2010, 20:48 | |
|
Mayonez,
Навскидку, первое, что пришло в голову... Проходя по строке в первый раз, создать таблицу уникальных пар (т.е. в строке acfghhachfjiac уникальными парами будут ac, cf, fg, gh, hh, ha, ch, hf, fj, ji и ia). Затем для каждой пары поставить в соответствие количество раз, которое она встречается в строке (для каждой пары делаем проход по строке и считаем количество совпадений). Ну а затем в новый массив переписываем входную строку, постоянно отслеживая пару, повторяющуюся максимальное число раз, и при переписывании заменяем её на требуемый символ... Кстати, первый и второй пункты можно объединить (видим пару - проверяем, нет ли её в таблице, если нет - добавляем, а если нашли, тут же увеличиваем её счётчик и переходим к следующей паре).
0
|
|
|
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874
|
|
| 31.08.2010, 21:50 [ТС] | |
|
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 31.08.2010, 21:57 | |
|
Mayonez,
Почти дописал))) Правда на Си будет, ну и с файлами я не стал заморачиваться, сделал ввод с клавиатуры, так что тебе останется только ввод-вывод переделать. Добавлено через 5 минут Кстати, а если несколько пар повторяются одинаковое число раз, и это как раз максимальное число повторений, как тогда поступить?
0
|
|
|
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874
|
|
| 31.08.2010, 22:08 [ТС] | |
|
заменить или любую из пар или обе но на две разные буквы
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 31.08.2010, 22:09 | |
|
Т.е. возможно любое решение? Разрешите, я остановлюсь на первом, когда выложу код, скажу идеи, как его можно переделать под второй вариант...
0
|
|
|
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874
|
|
| 31.08.2010, 22:11 [ТС] | |
|
окей, давай
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
||||||
| 31.08.2010, 22:48 | ||||||
Для, того, чтобы заменять другие пары, нужно сохранить найденное в первый раз максимальное число повторений, затем, после того, как произошла первая замена, входной строкой мы делаем получившуюся выходную (в которой один вид пар уже заменён некоторым символом), а из списка пар удаляем элемент, соответствующий заменяемой только что паре. Далее ищем в списке элемент, значение counter которого совпадает с ранее найденным максимальным значением (его менять больше не будем), и производим замену в строке уже этой пары. И это всё проделываем в цикле, пока есть элементы списка, значение counter которых совпадает с найденным в самый первый раз максимальным значением.
1
|
||||||
|
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874
|
||||||
| 01.09.2010, 15:57 [ТС] | ||||||
|
вот что получилось у меня на с+++STL
0
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
| 01.09.2010, 17:45 | ||||||
|
А вот что у меня получилось C++ + STL:
2
|
||||||
|
2 / 2 / 0
Регистрация: 30.08.2010
Сообщений: 12
|
||
| 02.09.2010, 10:06 | ||
|
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 02.09.2010, 10:09 | |
|
Банально - первая найденная пара - ab - будет первой в списке уникальных. При поиске пар с максимальной повторяемостью она также всплывёт первой - её-то и будем заменять... А то, что есть ещё и ba, мы и не узнаем потом, да и это нюансы, которые обычно решаются так, как я и описал выше, по принципу "кто первый встал - того и тапки"...
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 02.09.2010, 10:13 | |
|
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 02.09.2010, 10:14 | |
|
abababababababa
А так?
0
|
|
| 02.09.2010, 10:38 | |
|
Не по теме: silent_1991, тут ты меня и подловил :)
0
|
|
|
392 / 284 / 53
Регистрация: 26.12.2009
Сообщений: 874
|
|
| 03.09.2010, 14:50 [ТС] | |
|
0
|
|
| 03.09.2010, 14:50 | |
|
Помогаю со студенческими работами здесь
18
Задача. В последовательности символов, оканчивающихся точкой, найти наиболее часто встречающийся символ Найти цифру наиболее часто встречающуюся в тексте
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|