Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/160: Рейтинг темы: голосов - 160, средняя оценка - 4.93
Консультант Витте
 Аватар для DmitryM5
106 / 86 / 45
Регистрация: 27.08.2013
Сообщений: 1,356
Записей в блоге: 1

Задача на сжатие строки

27.05.2019, 10:25. Показов 31616. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, подскажите пожалуйста, как можно наиболее проще и наименьшим кодом решить данную задачу:

Стандартное решение:
Python
1
2
3
4
5
6
7
8
9
10
message = "aaaabbсaa"
cnt = 1
for i in message:
    if i == message[1:-1]:
        cnt += 1
        print(i, end='')
    else:
        print(i, end='')
        print(cnt, end='')
        cnt = 1
Задача:
Узнав, что ДНК не является случайной строкой, только что поступившие в Институт биоинформатики студенты группы информатиков предложили использовать алгоритм сжатия, который сжимает повторяющиеся символы в строке.

Кодирование осуществляется следующим образом:
s = 'aaaabbсaa' преобразуется в 'a4b2с1a2', то есть группы одинаковых символов исходной строки заменяются на этот символ и количество его повторений в этой позиции строки.

Напишите программу, которая считывает строку, кодирует её предложенным алгоритмом и выводит закодированную последовательность на стандартный вывод.

Sample Input 1:
aaaabbcaa
Sample Output 1:
a4b2c1a2

Sample Input 2:
abc
Sample Output 2:
a1b1c1
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.05.2019, 10:25
Ответы с готовыми решениями:

Сжатие строки
Питон изучаю не так давно, сейчас прохожу один курс, столкнулся с таким заданием, где нужно сжать строку по типу: Ввод: aaaabbcaa ...

Сжатие строки
# 3 функции нужны для стандартизации программ потом (буду использовать в других программах) def ReadArrInteger(n): L = for i in...

Сжатие большой строки в маленькую
Всем привет. Помогите, пожалуйста, решить следующую задачу: Дано: Есть одна сравнительно крупная строка, допустим "Lorem Ipsum -...

4
Эксперт Python
 Аватар для dondublon
4653 / 2073 / 366
Регистрация: 17.03.2012
Сообщений: 10,183
Записей в блоге: 6
27.05.2019, 12:50
Внизу этой страницы посмотрите, частая задача.
Подсказываю - itertools.groupby.
1
Консультант Витте
 Аватар для DmitryM5
106 / 86 / 45
Регистрация: 27.08.2013
Сообщений: 1,356
Записей в блоге: 1
29.05.2019, 12:37  [ТС]
dondublon, не нашел что то...
0
Эксперт Python
 Аватар для dondublon
4653 / 2073 / 366
Регистрация: 17.03.2012
Сообщений: 10,183
Записей в блоге: 6
29.05.2019, 12:46
DmitryM5, посмотрите внимательнее.
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
29.05.2019, 12:49
DmitryM5, Нахождение повторов символа
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.05.2019, 12:49
Помогаю со студенческими работами здесь

Указать ошибку + задача на сжатие строки через процедуру
Здравствуйте, очень часто выручал ваш форум, вот решил и свой вопрос задать. Надеюсь на скорую программистскую помощь. Заранее спасибо. ...

Сжатие строки символов путем удаления пробелов из исходной строки
Помогите пожалуйста, нужен только текст кода программы ассемблера, а то с Англ.языком вообще плохо, да и вообще ассемблер не понимаю. ...

Сжатие строки
Пожалуйста помогите. Необходимо написать программу : "Ввести с клавиатуры строку. Сжать строку, т.е. удалить пробелы и табуляции....

Легкое сжатие данных (строки)
есть строка. 30 символов. почти все цифры, есть пара латинских букв. нужно втиснуть эту строку в xs:long, т.е., вообще говоря, в строку из...

Сжатие строки (cgi скрипт)
Сжатие строки Один из простых способов сжатия информации заключается в поиске одинаковых частей, идущих подряд. Вместо нескольких...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru