Собери бусы так, чтобы каждая бусина отличалась от предыдущей одним признаком: формой, цветом или размером.
Ответы на вопрос
Говорю как человек, который такие задачки любит: тут надо понимать «ровно одним признаком». То есть между соседними бусинами совпадают два признака и меняется только один — либо форма, либо цвет, либо размер.
Быстрый готовый пример (по два значения каждого признака)
Пусть формы: круг/квадрат, цвета: красный/синий, размеры: малый/большой. Тогда вся «кубическая» восьмёрка раскладывается в цепочку, где между соседями меняется ровно один бит-признак (это по сути 3-разрядный код Грея):
-
круг, красный, малый
-
круг, красный, большой (поменялся только размер)
-
круг, синий, большой (только цвет)
-
круг, синий, малый (только размер)
-
квадрат, синий, малый (только форма)
-
квадрат, синий, большой (только размер)
-
квадрат, красный, большой (только цвет)
-
квадрат, красный, малый (только размер)
Проверь: между любыми соседями ровно одно отличие.
Как собирать в общем случае (любой набор значений)
Рабочая схема такая:
-
Задай порядок «быстроты» признаков. Самый «быстрый» меняется чаще всего, «средний» — на переходах между небольшими блоками, «медленный» — реже всего.
-
Иди «змейкой». Для быстрого признака перебирай значения последовательно, а направление перебора для него переворачивай каждый раз, когда меняешь средний признак. Аналогично — средний признак переворачиваешь направление при каждом изменении самого медленного.
-
Меняй только один признак за шаг. Благодаря «змейке» при переходе между блоками у тебя меняется лишь один из более медленных признаков, а быстрый на стыке совпадает с последним значением предыдущего блока.
Проще увидеть на примере 3 цвета × 2 формы × 2 размера (быстрый — цвет, средний — форма, медленный — размер):
-
Размер: малый, форма идёт слева направо по цветам
-
круг, красный, малый
-
круг, зелёный, малый
-
круг, синий, малый
-
квадрат, синий, малый ← меняется только форма
-
квадрат, зелёный, малый
-
квадрат, красный, малый ← «змейка»: цвета в обратном порядке
-
-
Переходим к большому размеру: меняется только размер, форму/цвет оставляем как в п.6
7) квадрат, красный, большой
8) квадрат, зелёный, большой
9) квадрат, синий, большой
10) круг, синий, большой ← меняется только форма
11) круг, зелёный, большой
12) круг, красный, большой ← снова обратный пробег по цветам
Между любыми соседними — одно отличие.
Если значений много и порядок специфический
-
Думай об этом как о проходе по «решётке» всех комбинаций, где разрешены только ходы, меняющие один признак. Это и есть последовательность в стиле Грея.
-
Выбери порядок признаков (быстрый → медленный) и применяй «одометр со змейкой»: внутренний счётчик бежит вперёд-назад, внешний щёлкает на 1, крайний внешний — ещё реже.
-
Если нужно замкнуть в кольцо (чтобы последняя и первая бусины тоже отличались ровно одним признаком), проверь последние и первые значения; иногда достаточно поменять порядок признаков или перевернуть направление одной «змейки».
Этого достаточно, чтобы собрать цепочку для любых форм/цветов/размеров, не нарушая правило «один признак за шаг».
Похожие вопросы
Топ вопросов за вчера в категории Математика
Последние заданные вопросы в категории Математика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

