ОГЭ, задание 2

Кодирование и декодирование информации

Второе задание экзамена. Даны кодовая таблица и цепочка символов. Надо понять, где кончается один код и начинается следующий.

Задание стоит 1 балл и решается за две-три минуты — но только если знать, что делать на развилке. Именно развилка и есть вся задача.

как устроен код

Букву заменяют цепочкой символов

Каждой букве назначен свой код. Слово кодируют, склеивая коды подряд — без пробелов и разделителей.

АДКНОС
01100101 10111000
10
Н
111
О
000
С

НОС  →  10111000

Закодировать легко: смотрим в таблицу и выписываем. Вся работа — в обратную сторону.

в чём подвох

Разделителей нет — где резать?

В той же таблице Н = 10, а К = 101 и Д = 100. Код одной буквы оказался началом кода другой.

Отсюда и берётся развилка

Дошли до 101… — и не знаете сразу: это К целиком или Н, а единица уже от следующей буквы?

Проверить можно только одним способом: попробовать и посмотреть, что будет дальше.

Когда развилок нет

Если ни один код не является началом другого, разрез единственный и очевидный. Это называют условием Фано.

Но экзаменационные задачи почти всегда его нарушают — намеренно. Иначе задачи бы не было.

метод

Слева направо, с откатом

  1. Встали в начало цепочки. Смотрим, какие коды с неё начинаются. Обычно один-два. Если один — выбора нет, берём его.
  2. Берём один вариант, отрезаем, продолжаем с остатка. Отрезанная часть сразу записываем буквой — иначе запутаетесь.
  3. Упёрлись в тупик — вернулись к развилке. Тупик — это остаток, с которого не начинается ни один код. Часто это просто «остался лишний символ в конце».

Главная ошибка: дойти почти до конца, увидеть, что последние символы не складываются, и решить, что ошибся в таблице. Нет — надо вернуться к последней развилке.

разбираем развилку

Как выглядит тупик

Та же таблица, цепочка 10111101. С начала подходят Н = 10 и К = 101.

Берём Н = 10

10
Н
111
О
101
К

Сошлось до последнего символа: НОК.

Берём К = 101

101
К
111
О
01
?

Осталось 01 — это А, тоже сходится: КОА. Два разбора!

Здесь оба варианта дошли до конца — значит у цепочки две расшифровки. На экзамене такие цепочки и дают в задаче «найди ту, у которой расшифровка одна».

что даёт однозначность

Три подсказки в условии — и каждая работает по-своему

что написано в условиичто это значит для разбора
ничего дополнительно цепочка подобрана так, что разрез единственный: все лишние ветки упрутся в тупик
«буквы в нём
не повторяются»
развилку режет не тупик, а оговорка: уже занятую букву второй раз брать нельзя. Без неё разрезов было бы несколько — значит пользоваться ей обязательно
«найдите ту,
у которой одна
расшифровка»
мало найти один разрез — надо у каждой цепочки перебрать все и посчитать

особый случай

Когда все коды одной длины

Тогда развилок нет вовсе: делим длину цепочки на длину кода и режем на равные части.

АБВГДЕ
..o...o..o.oo.o .oooo...o..o.oo

25 символов : 5 = 5 букв. Дальше просто выписываем их и смотрим, какие встретились дважды.

Такие задачи и спрашивают не текст, а какие буквы повторяются. Ответ — сами буквы, порядок любой: официальный ключ демоверсии так и записан — «АБ; БА».

одно и то же в разной одежде

Шифр меняется — работа нет

  • 0 и 1сообщение от связного, в ответе пароль
  • точки и тирезапись, принятая радистом, азбука Морзе
  • @ ~ + или # ^ +свой шифр, придуманный двумя приятелями
  • номера букв
    в алфавите
    А=1, Б=2, … Я=33 — коды в одну и две цифры

Разрезать цепочку из нулей и единиц или из точек и тире — одна и та же работа. Символы кода на решение не влияют никак, они только меняют вид условия.

как записывают ответ

Ответ сверяет машина, знак в знак

  • Расшифровка — буквы подряд, без пробелов и запятых: КАРЕТА, а не «К А Р Е Т А».
  • Количество букв — только число: 5, а не «5 букв».
  • Какие буквы повторяются — сами буквы: АБ.

Информатику сдают за компьютером: ответ вы набираете с клавиатуры в экзаменационной программе. Лишний пробел или приписанное слово — и верное решение засчитано не будет. Набрали — перечитайте, что стоит в поле.

итог

Задание всегда об одном

Разрезать цепочку на коды. Различаются только две вещи.

1. Чем режется развилка

Тупиком — лишняя ветка не доходит до конца

Оговоркой «буквы не повторяются»

Ничем — надо самому посчитать разборы у каждой из нескольких цепочек

Равномерностью кода — развилок нет

2. Что спрашивают

Сообщение — буквы подряд

Сколько букв — число

Какие буквы повторяются — сами буквы

Прочитайте вопрос до конца: разобрать цепочку и записать не то, что спросили, — самая обидная потеря балла в этом задании.

Дальше — тренажёр: двенадцать задач, по две на каждый тип. Таблицы и цепочки у всех свои, проверка сразу.

Материалы подготовлены с использованием технологий искусственного интеллекта. → слайд · Пробел шаг · F11 во весь экран