|
0 / 0 / 0
Регистрация: 18.10.2020
Сообщений: 5
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Сжатие сообщений19.11.2020, 10:54. Показов 1017. Ответов 0
Метки нет (Все метки)
На планете, где живет инопланетянин Лучик, вся информация передается в шестнадцатеричном виде. Любое битовое сообщение разбивается на блоки по 4 бита и преобразуется в символы от 0 до F (шестнадцатеричные цифры - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F). Так как каналы связи очень нагружены, в системах связи используют сжатие данных.
В большинстве систем связи на планете при передаче текстовой информации используется следующий алгоритм сжатия. Исходный текст состоит из заглавных латинских букв от A до Z и пробелов. В процессе работы алгоритма используется упорядоченный словарь. Изначально он заполняется всеми возможными односимвольными последовательностями (буквы от A до Z и пробел). В процессе работы алгоритм посимвольно просматривает исходный текст и обрабатывает его следующим образом. Записать в текущую фразу T первый символ. Если исходные данные окончились, вывести код T. Считать следующий символ Q. Если фраза TQ есть в словаре, то T = TQ, перейти на шаг 2. Если фразы TQ нет в словаре, то вывести код T, добавить TQ в словарь, присвоить T = Q и перейти на шаг 2. Заметим что для разархивации (декодирования) получившийся словарь не нужен. Он легко формируется в процессе разархивации. Кодом фразы считается порядковый номер этой фразы в словаре. Для удобства перевода в шестнадцатеричный вид коды предварительно записываются в двоичном виде с переменным числом бит. Рассмотрим это на примере. Пусть исходное сообщение имеет вид A BIG BLACK BUG BIT A BIG BLACK DOG В нашем алфавите 27 букв (буквы от A до Z и пробел), поэтому для его кодирования достаточно 5 бит. Начальный словарь имеет вид A = 00000 B = 00001 .... Z = 11001 (пробел) = 11010 Процесс архивации (кодирования) представлен в таблице ниже (символ “_“ обозначает пробел).
06828370B00229C51F75369B767863683386 Процесс декодирования происходит аналогично. Единственным отличием является, то словарь заполняется в два этапа.
Группа путешественников, совершавшая Кругопланетную экспедицию, сбилась с пути и попала на заброшенную станцию. На ее центральный компьютер постоянно приходило одно и тоже сообщение, однако программное обеспечение, отвечающее за разархивацию данных, по странному стечению обстоятельств не работало. Помогите путешественникам понять, что содержится в этом странном сообщении – напишите программу, которая его разархивирует (декодирует). Формат ввода В единственной строке записана последовательность шестнадцатеричных цифр, длиной не более 105 – заархивированное сообщение. Формат вывода Выведите исходное сообщение до архивации.
0
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 19.11.2020, 10:54 | |
|
Ответы с готовыми решениями:
0
Сжатие текста |
| 19.11.2020, 10:54 | |
|
Помогаю со студенческими работами здесь
1
Сжатие символьного файла Задача на сжатие строки
Сжатие массива неизвестной длины Решение задачи на RLE-сжатие Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла:
Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
|
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-text-sdl3-c. zip
finish-text-sdl3-cpp. zip
|
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
|
|
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo
Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло.
Но на выплатах по больничным это. . .
|
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в КА2. Данные берутся из регистра сведений, по которому настроено. . .
|
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y
Z4Tv2zpXVVo
https:/ / github. com/ shumilovas/ med2. git
|
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа в КА2.
В качестве фильтра для отбора справочника служит группа номенклатуры.
Отбор по наименованию. . .
|