Задача №4. Инфракрасный диалог
На Земле готовится приёмник – КиберМишку, чтобы наконец наладить связь с медведями на планете Берлога. Станция уже фиксирует слабые сигналы с их стороны, но пока КиберМишка не полностью готов к работе. Прежде чем принимать первые сообщения, вам нужно завершить настройку: убедиться, что робот правильно реагирует на ключевые слова.
Сообщения передаются по инфракрасному каналу, где каждая буква передаётся числом в кодировке Win-1251 (см. Рисунок 2). Есть набор слов, которые должны вызывать определённый отклик, чтобы КиберМишка показал, что он понимает собеседника:
- на “МЕД” (именно через букву Е!) КиберМишка должен нарисовать на матрице сердечко;
- на “ОСА” КиберМишка должен нарисовать грустный смайлик на матрице.
Описанные выше рисунки выглядят следующим образом:
Рисунок 1. Рисунки, которые необходимо рисовать на матрице
Убедитесь, что рисунки нарисованы с максимальной яркостью (100).
Задачу можно решать частично – балл за решение зависит от числа успешно принятых последовательностей сообщений.
Кроме этого, мишки периодически передают слово на своём языке, которое встречается в сообщении из Задачи 1. Там же указано, какое из вышеперечисленных слов оно означает. Соответственно, КиберМишка должен будет отреагировать так, будь-то пришло слово на нашем языке.
В проверочной системе будут использоваться два типа входных последовательностей:
- В которых слова не пересекаются и идут последовательно (например, ОСАМЕД)
- В которых слова пересекаются и могут перетекать друг в друга (например, ОСМЕД)
Для того, чтобы сдать решение, создайте диаграмму согласно условию и сохраните её в файл. Затем откройте этот файл в блокноте (или другом текстовом редакторе), скопируйте всё содержимое файла и вставьте его в переменную state_machine в поле ввода решения. Больше никаких действий с текстом не требуется, иначе проверочная система может не принять вашу диаграмму.
В таблице даны числа в двоичной кодировке, но КиберМишка работает с десятичной системой счисления.
Рисунок 2. Таблица символов Win-1251