Игра головоломка Час Пик для Малышей
Возраст:
от 5 до 7 лет
от 7 до 12 лет
Цена в интернет магазине: 1 611 руб
Цена в магазинах сети: 1 790 руб
Наличие в магазинах:
- ул. Станиславского, 6
Доставка по городу от 300 руб
- Описание
- Характеристики
- Отзывы
Игра головоломка Час Пик для Малышей — это обновленная версия игры-головоломки «ЧАС ПИК». Новая версия, для малышей, выполнена в более ярких цветах. Кроме того, главный герой, которого необходимо вывести из пробки — фургончик с мороженым. В начале игры расставьте машинки так, как нарисовано на карточке-задании. Далее необходимо перемещать машины по игровому полю таким образом, чтобы дать возможность фургончику с мороженым выбраться из пробки и добраться до выезда с поля. Машинки могут двигаться взад-вперед по линиям игрового поля, в соответствии со своим расположением.
Настольная игра совершенствует последовательное и логическое мышление ребенка, учит сосредоточенности и внимательности.
Состав набора: игровое поле, 11 фишек-машинок, 40 карточек.
Рекомендуемый возраст: от 5 лет.
Вес: 300 г.
Материал: пластик, картон.
Размер упаковки: 225х65х205 мм
Упаковка: картонная коробка блистерного типа.
Купить Игру головоломку Час Пик для Малышей в Новосибирске Вы можете в магазине развивающих и настольных игр «Игры Почемучек»
Артикул: | 5041-RU |
Возраст: | от 5 до 7 лет от 7 до 12 лет |
Пол: | Мальчик Девочка |
Добавить отзыв
- Оставлять отзывы могут только зарегистрированные и авторизованные пользователи.
- Пользователи, оставляющие отзывы, несут полную правовую ответственность за их содержание.
- В отзывах сохраняется авторская орфография и пунктуация.
- В отзывах запрещено:
- Использовать нецензурные выражения, оскорбления и угрозы
- Публиковать адреса, телефоны и ссылки содержащие прямую рекламу
- Писать просьбы найти какой-либо товар или любые другие посторонние тексты
- Писать отвлеченные от темы и бессмысленные комментарии
Игры головоломки час пик для малышей Thinkfun в Миассе: 551-товар: бесплатная доставка, скидка-55% [перейти]
Партнерская программаПомощь
Миасс
Каталог
Каталог Товаров
Одежда и обувьОдежда и обувь
СтройматериалыСтройматериалы
Текстиль и кожаТекстиль и кожа
Здоровье и красотаЗдоровье и красота
Детские товарыДетские товары
Продукты и напиткиПродукты и напитки
ЭлектротехникаЭлектротехника
Дом и садДом и сад
Сельское хозяйствоСельское хозяйство
Мебель и интерьерМебель и интерьер
ПромышленностьПромышленность
Все категории
ВходИзбранное
Настольная игра—головоломка на логику «Час пик»: 16 машин, 182 задания Тип: настольная игра, Жанр
ПОДРОБНЕЕНастольная игра—головоломка на логику «Час пик«: 16 машин, 182 задания, найди выход с парковки Тип:
ПОДРОБНЕЕНастольная игра—головоломка на логику «Час пик«: 16 машин, 182 задания Тип: настольная игра,
ПОДРОБНЕЕИгровой набор ThinkFun Час пик—игра—головоломка Производитель: ThinkFun, Головоломка: набор,
ПОДРОБНЕЕЛас Играс KIDS / Настольная игра—головоломка на логику «Час пик«, цвет разноцветный, Лас Играс KIDS
ПОДРОБНЕЕНастольная игра Час пик 2894953 Тип: настольная игра
ПОДРОБНЕЕИгровой набор ThinkFun Час пик—игра—головоломка Производитель: ThinkFun, Головоломка: набор,
ПОДРОБНЕЕЛогическая игра / парковка / iq гонки в час пик /головоломка / 17 машинок, 212 заданий. Пазл Pashka&Toys
ПОДРОБНЕЕ-31%
966
1400
Игра—головоломка Лас Играс «Час пик«, найди выход с парковки (2894953) Тип: настольная игра,
ПОДРОБНЕЕНастольная игра Академия Игр головоломка «Час пик» Логическая головоломка для детей Настольная игра на логику Логические игры от 6 лет Головоломки Детская игрушка развивающая мышление Игра—головоломка Настольные детские
ПОДРОБНЕЕ Часы пикГоловоломка час пикНастольная игра—головоломка на логику «Час пик»: 16 машин, 182 задания Тип: настольная игра, Жанр
ПОДРОБНЕЕНастольная игра—головоломка на логику «Час пик»:16 маш,152 зад Тип: настольная игра, Жанр игры:
ПОДРОБНЕЕНастольная игра—головоломка на логику «Час пик»: 16 машин, 182 задания Тип: настольная игра,
ПОДРОБНЕЕИгра настольная головоломка «Час пик» Материал: пластик, Пол: для девочек, для мальчиков, унисекс
ПОДРОБНЕЕНастольная игра—головоломка на логику «Час пик»: 16 машин, 182 задания Тип: настольная игра,
ПОДРОБНЕЕABtoys (АБтойс) / Игра настольная головоломка Час пик, ABtoys (АБтойс) Производитель: ABtoys, Пол:
ПОДРОБНЕЕНастольная игра—головоломка на логику «Час пик»: 16 машин, 182 задания Тип: настольная игра,
ПОДРОБНЕЕ-56%
328
750
Настольная игра / Развивающая Час Пик IQ CAR Логическая Головоломка Машинки Гараж Тип: Настольная
В МАГАЗИН-53%
847
1805
Настольная игра—головоломка на логику «Час пик«: 16 машин, 152 задания Тип: Настольная игра,
В МАГАЗИН-41%
767
1299
Настольная игра—головоломка на логику «Час пик«, набор из 16 машин и 152 заданий, найди выход с парковки.
В МАГАЗИНИгра настольная головоломка «Час пик» Штрихкод: 4606089138113
В МАГАЗИННастольная игра ABtoys Академия Игр головоломка Час пик ABtoys (АБтойс) Тип: настольная игра,
ПОДРОБНЕЕИгра настольная головоломка «Час пик» Материал: пластик, Пол: для девочек, для мальчиков, унисекс
ПОДРОБНЕЕНастольная Игра Сложи Лягушку Развивающая Игра для Детей, Пазл Макси Мемори Танграм Головоломка Логическая игра, Сортер, Развивает Мышление, Логику лягушка с крупными деталями очень похож на игру танграм. в наборе: 18 двухсторонних пластиковых пазлов, 1 игровое поле в форме лягушки. правила игры: Выбери одну из 40 карточек с заданиями Расположите полукруглые кусочки головоломки на игровом поле в форме лягушки
ПОДРОБНЕЕ-14%
898
1040
Настольная игра—головоломка Лас Играс на логику Час пик: 16 машин 182 задания 2894953 reviewsCount:
ПОДРОБНЕЕНастольная игра—головоломка на логику «Час пик»: 16 машин, 182 задания Тип: настольная игра, Жанр
ПОДРОБНЕЕ-38%
1 196
1920
Настольная игра—головоломка на логику «Час пик«: 16 машин, 182 задания Тип: настольная игра, Жанр
ПОДРОБНЕЕ-49%
915
1795
Настольная игра—головоломка на логику Час пик: 16 машин, 182 задания Лас Играс KIDS Тип: настольная
ПОДРОБНЕЕНастольная игра ABtoys Академия Игр головоломка Час пик PT-01122 ABtoys (АБтойс) Тип: настольная
ПОДРОБНЕЕ2 страница из 18
Игры головоломки час пик для малышей Thinkfun
Michael Fogleman
Как я создал базу данных всех интересных конфигураций в час пик.
Час пик — это головоломка со скользящими блоками 6×6, придуманная Нобом Йошигахарой в 1970-х годах. Впервые она была продана в США в 1996 году.
Несколько лет назад я играл в клон этой игры на своем первом iPhone. Недавно я наткнулся на его физическое воплощение и тут же купил его на Amazon для своих детей. Нам было весело, но, естественно, больше всего меня интересовало написание кода для решения головоломок.
Написав решатель, я написал генератор головоломок, который создал бы нам больше стартовых позиций для попыток (в игре 40 уровней, напечатанных на игральных картах). Генератор использовал имитацию отжига, чтобы попытаться максимизировать количество ходов, необходимых для решения головоломки.
Неудовлетворенный результатами, я решил попробовать сгенерировать все возможные головоломки. В конечном итоге я получил полную базу данных всех «интересных» стартовых позиций. Это было довольно сложно (и увлекательно!), и именно об этом я хочу рассказать в этой статье. Мой код является открытым исходным кодом с разрешительной лицензией, и результирующая база данных доступна для загрузки.
Час пик (обычное издание)
Содержание
- Терминология
- Уровень техники
- Интересные головоломки
- Комбинаторный взрыв
- Битборды
- Перечисление состояний
- Лексикографическое упорядочение
- Визуализация кластеров
- Кластерный анализ
- Go против C++
- Облако
- Самые сложные головоломки
- Анализ результатов
- Формат базы данных
- Загрузка базы данных
- Коммунальные услуги
- Онлайн-игра
- Попробуйте сами
- Топ 23
- Заключение
Терминология
- Часть : транспортное средство на доске-пазле. Каждая часть имеет положение, размер и ориентацию (горизонтальную или вертикальную). В Час пик есть 2 части (автомобили) и 3 части (грузовики).
- Основная часть : «красная машина» в головоломке, часть, которая должна добраться до выхода на правой стороне доски.
- Шаг : перемещение фигуры на единицу.
- Move : перемещение фигуры на N шагов одновременно.
- Целевое состояние : любое состояние, при котором основная фигура находится на целевом поле (вплоть до правого). Обратите внимание, что нет необходимости моделировать основную фигуру, фактически покидающую доску.
- Unsolved : состояние, которое находится дальше от целевого состояния, чем любое другое достижимое состояние. Головоломку нельзя усложнить, перемещая части. Обратите внимание, что это , а не означает неразрешимость!
- Минимум : состояние, в котором важна каждая деталь.
Ни одна часть не может быть удалена без изменения решения. - Самый сложный : для решения требуется наибольшее количество ходов.
- Кластер : набор состояний головоломки, которые достижимы друг из друга — связный граф всех достижимых состояний.
- Стена : неподвижное (неподвижное) одноячеечное препятствие. Не является частью оригинальной игры Rush Hour, но включена в некоторые клоны и в мой код.
Уровень техники
Я не проводил много исследований или чего-то еще, но нашел эти документы:
- Нахождение жестких начальных конфигураций «Часа пик» с помощью бинарных диаграмм принятия решений — Фредерик Серве
- О трудностях 6×6 в час пик — исследование всего пространства конфигурации — Йелле ван Ассема
Первый был скорее академическим и не особенно полезным. Казалось, их больше интересовал необычный подход, чем просто решение проблемы.
Кроме того, оптимизировалось количество «шагов» (по сравнению с «ходами» — шаги представляют собой единичные перемещения), что мне показалось неестественным. Второй был более интересным и дал мне некоторые идеи. Но нигде я не нашел какой-либо полной базы данных, только несколько самых сложных конфигураций и несколько диаграмм. Во втором документе упоминалось, что для запуска их кода потребовалось порядка 100 часов. Мой код занимает около 3 часов.Интересные головоломки
Итак, что я подразумеваю под словом «интересно»? Я установил набор правил, чтобы отфильтровать множество бессмысленных головоломок. Интересные головоломки подчиняются следующим правилам:
- Ни одна строка не может быть полностью заполнена горизонтальными элементами, а ни один столбец не может быть полностью заполнен вертикальными элементами. Они просто образуют стены из кусочков, которые никогда не могут двигаться. Не очень интересно.
- В основном ряду не должно быть никаких горизонтальных элементов, кроме самого основного элемента. Это позволило бы другим автомобилям также покинуть борт. Однако стены могут присутствовать слева от основной части.
- В каждом кластере должна быть только одна запись базы данных — никакие две записи в базе данных не должны быть доступны друг другу.
- Записи базы данных должны быть полностью «нерешенными» — их нельзя усложнить, перемещая части.
- Записи в базе данных должны быть «минимальными» — каждая часть головоломки важна. Удаление любой части изменит решение. (Это правило резко уменьшает размер базы данных, но увеличивает время обработки.)
- База данных должна быть завершена — любой кластер, удовлетворяющий приведенным выше правилам, должен быть включен.
Комбинаторный взрыв
Час пик — прекрасный пример комбинаторного взрыва.
Размер платы | Время решать* | Интересные головоломки | Количество штатов | Количество штатов (одна стена) |
---|---|---|---|---|
4×4 | 0,01 с | 32 | 9 303 | 43 927 |
5×5 | 6,2 с | 1 730 | 6 795 363 | 51 444 144 |
6х6 | 3ч20м | 476 118 | 27 103 652 325 | 287 592 039 683 |
7×7 | ??? | ??? | ??? | ??? |
Таким образом, написание эффективного кода и использование умных алгоритмов будет важно, но пока это только продвинет нас вперед. Я думаю, что решение случая 7×7 может быть выполнимо, но потребует обширных вычислительных ресурсов, которые я не могу себе позволить! (Возможно, для этого потребуются десятилетия процессорного времени.) Даже добавление стен значительно увеличивает сложность, поэтому я решил только случай с 0, 1 или 2 стенами. Обратите внимание: несмотря на то, что существуют десятки миллиардов возможных состояний, лишь около полумиллиона головоломок удовлетворяют нашим критериям интересности.
* раз для iMac с процессором Intel Core i5 3,4 ГГц (4 ядра)
Bitboards
Мой код активно использует битборды. Они обычно используются в шахматных движках и других настольных играх. В случае с «Часом пик» битовые доски показывают, какие квадраты заняты фигурами. Код также поддерживает битовую доску только для горизонтальных частей и битовую доску только для вертикальных частей. Имеется 6×6 = 36 квадратов, поэтому для битовых досок используется 64-битное целое число без знака.
Следующая диаграмма показывает, какие биты соответствуют каким квадратам.
00 01 02 03 04 05
06 07 08 09 10 11
12 13 14 15 16 17
18 19 20 21 22 23
24 25 26 27 28 29
3 0 31 32 33 34 35
На следующей диаграмме показаны битовые платы для образца платы.
Все горизонтальные, верт. ГББ.Л. 111010 011000 100010 GHI.LM 111011 000000 111011 GHIAAM => 111111 = 000110 | 111001 СССК.М 111101 111000 000101 ..ДКДД 001111 000011 001100 EEJFF. 111110 110110 001000
Решение 51-ходовой головоломки
Перечисление состояний
Чтобы изучить все возможные головоломки, нам нужен эффективный способ перечисления всех возможных расстановок фигур на основе наших правил. Давайте разберем его, сначала взглянув на отдельные строки и столбцы. Для головоломки 6×6 с 2 и 3 элементами в следующей таблице показаны все возможные способы появления горизонтальных элементов в строке (или вертикальных элементов в столбце).
[] | [2] | [2, 2] | [2, 3] | [3] | [3, 2] |
---|---|---|---|---|---|
…… | АА…. | ААВВ.. | ААБББ. | ААА… | АААВВ. |
Основной ряд (ряд с красной машиной) особенный и ограничен [2] набор.
Мы можем выбрать любое из этих мест размещения для каждой строки. Но затем, когда мы начинаем выбирать места для столбцов, мы должны убедиться, что вертикальные элементы не перекрывают горизонтальные. В моей реализации я использую битовые доски, которые постепенно обновляются по мере выполнения назначений фрагментов для эффективной проверки этих коллизий. Как только коллизия обнаружена, это поддерево больше не нужно рассматривать.
Лексикографическое упорядочение
Приведенная выше схема перечисления даст миллиарды состояний, которые мы затем сможем оценить. Но нам нужно только оценить каждый отдельный кластер (связный граф взаимодостижимых состояний) один раз. На самом деле нам нужно, чтобы перечислитель дал нам одно состояние на кластер, а затем мы можем найти другие достижимые состояния во время дальнейшей оценки.
Теоретически мы могли бы поддерживать гигантский набор видимых позиций, чтобы избежать дублирования работы. Но, учитывая размер области поиска, я посчитал это плохим подходом.
Итак, я создал концепцию наличия единого «канонического» состояния для каждого кластера. Каноническое состояние — это состояние, которое сравнивается меньше, чем любое другое достижимое состояние. Меньше, спросите вы? Напомним, что класс Board поддерживает три битборда, соответственно указывающие на наличие 1) всех частей, 2) горизонтальных частей и 3) вертикальных частей. С ними определение оператора «меньше» просто:
логический операторПростое сравнение масок
Все
не сработает, поскольку два разных состояния в одном кластере могут иметь одинаковое значение.Итак, теперь, оценивая новый кластер как потенциальную запись в базу данных, мы можем немедленно выйти раньше, если обнаружим, что начальное состояние было не меньше любого другого достижимого состояния в кластере. Мы обмениваем небольшое количество времени обработки на огромное снижение потребления памяти и межпотокового взаимодействия.
Но это еще не все! Мы можем сделать перечислитель умнее, чтобы он обычно выдавал канонические состояния, которые не пройдут эту проверку. Если какая-либо фигура может двигаться вверх или влево, то мы знаем, что некоторое достижимое состояние меньше текущего состояния. Bitboards находят хорошее применение здесь. По мере того, как счетчик создает состояния-кандидаты, он поддерживает битовую доску, указывающую квадраты, которые должны быть заняты, чтобы предотвратить перемещение каких-либо частей вверх или влево. Это квадраты непосредственно над вертикальными фигурами и сразу слева от горизонтальных фигур. Вот пример, демонстрирующий, как всего несколько операций с битовой доской могут определить, могут ли какие-либо части двигаться вверх или влево. Автономная формула:
(((Horz >> 1) & ~RightColumn) | (Vert >> 6)) & ~Все
H>>1&~RC V>>6 ~Все ГББ.Л. 110000 111011 000101 000001 GHI.LM 000000 111001 000100 000000 ГИАМ => 001100 | 000101 и 000000 = 000000 CCCK.M 110000 001100 000010 000000 ..JKDD 000110 001000 110000 000000 EEJFF. 101100 000000 000001 000000
Сдвиг горизонтальной маски на 1 имитирует перемещение горизонтальных частей влево, но мы должны очистить крайний правый столбец из-за зацикливания битов. Сдвиг вертикальной маски на ширину доски (6) имитирует перемещение вертикальных фигур вверх. В этом случае нам не нужно беспокоиться об упаковке. Наконец,
и ~все операции
удаляют биты, которые не могут перемещаться из-за препятствий.Результат в этом примере отличен от нуля, поэтому некоторая фигура может двигаться вверх или влево. (Мы видим, что фигура
M
может двигаться вверх.) Эта доска не является канонической и может быть пропущена. (Мы посетим этот кластер, когда перечислитель выдаст каноническую форму.)Благодаря этому методу код использует очень мало памяти и не требует поддержки огромной таблицы поиска уже просмотренных позиций. В случае 6x6 перечислитель выдает идеально "канонические" состояния в 33% случаев. Без этого трюка было бы меньше 1%.
Визуализация кластеров
Кластеры — это просто ориентированные графы, в которых каждый узел представляет собой состояние головоломки, а каждое ребро — допустимый ход. (На самом деле все движения обратимы, так что это тоже можно считать неориентированным графом.) Таким образом, мы можем визуализировать их с помощью Graphviz. Вот несколько примеров (нажмите, чтобы увеличить).
На этих графиках нерешенные состояния отмечены красным, целевые состояния — зеленым, а оптимальный кратчайший путь — синим. Все остальные узлы желтые. Мы видим, что разные кластеры имеют разную «форму» и часто бывают узкие места. Возможно, это можно как-то использовать для оценки сложности головоломок?
Кластерный анализ
Для каждого состояния, созданного перечислителем, мы хотим проанализировать его кластер, чтобы выяснить, что нас в конечном счете интересует:
- Разрешим ли этот кластер? То есть, являются ли достижимые состояния целевыми состояниями? Если нет, мы можем прервать досрочно.
- Какое состояние (я) дальше всего от целевого состояния? То есть какие состояния самые "неразгаданные"? Сколько ходов требуется, чтобы выйти из этого состояния?
- Является ли нерешенная головоломка минимальной? То есть все ли части важны? Если удаление какой-либо части не влияет на решение, то головоломка не является минимальной и отбрасывается.
- Бонус: насколько далеко от целевого состояния находятся все промежуточные состояния? То есть, как выглядит гистограмма, где X — количество оставшихся ходов, а Y — количество состояний в кластере. Иными словами, сколько узлов появляется на каждом ранге в визуализациях Graphviz?
Эта часть кода на самом деле довольно проста. См. cluster.cpp, если вам интересно!
Самый большой кластер на данный момент. Эта головоломка имеет 541 934 достижимых состояния. Никаких трех частей и много места для перемещения. Требуется всего 15 ходов, чтобы решить.
Go против C++
Весь мой код изначально был написан на Go. Но когда я начал пытаться «решить» всю игру, я решил использовать C++, чтобы получить максимально возможную производительность.
Я сделал много улучшений, перенеся свой код на C++, поэтому у меня нет прямого сравнения между Go и C++ для полной программы. Но я провел тесты для нескольких подзадач, таких как повторное решение одной и той же головоломки. В большинстве этих тестов C++ работал примерно в 2 раза быстрее, чем Go.
Особая благодарность Мэтту Годболту (известному исследователю компиляторов) за советы по повышению производительности C++!
Облако
Решение задачи 6x6 без стен заняло на моем iMac 3 часа 20 минут. Но для решения головоломок с двумя стенами я использовал инстанс EC2 с 72 ядрами (3,0 ГГц Intel Xeon Scalable), чтобы быстрее справляться с ним. Это заняло 16 часов 50 минут и стоило мне около 50 долларов. Но точно было весело! По моим оценкам, на моем iMac это заняло бы 170 часов (около недели).
htop на EC2 с 72 ядрами, пыхтящими
Самые сложные головоломки
Количественная оценка сложности головоломок «Час пик»… трудна… поэтому обычно, когда я говорю «самая сложная», я имею в виду «требующая наибольшего количества ходов». Теперь я представляю вам самые сложные головоломки 6x6 с 0, 1 и 2 стенами.
Самая сложная игра 6x6 с 0 стенами, требуется 51 ход
(щелкните для решения)
Самая сложная игра 6x6 с 1 стеной, потребуется 60 движений
(щелкните для решения)
Самая сложная игра 6x6 с 2 стенами, потребуется 58 движений
(нажмите для решения)
Анализ результатов
Интересно посмотреть статистику кластера в совокупности. Наиболее распространенное количество ходов в базе данных — 11, а сложные головоломки встречаются редко. Мы видим очень хорошее нормальное распределение при построении логарифма (размер кластера)
. Я не погружался слишком глубоко здесь, так что, возможно, есть еще что-то, что стоит изучить.
Формат базы данных
База данных представляет собой простой текстовый файл с несколькими столбцами. Для каждого допустимого (разрешимого, минимального) кластера имеется одна строка. Столбцы: количество ходов, описание доски и размер кластера (количество доступных состояний).
60 IBBxooIooLDDJAALooJoKEEMFFKooMGGHHHM 2332 58 BBoKMxDDDKMoIAALooIoJLEEooJFFNoGGoxN 9192 55 ooBBMxDDDKMoAAJKoNooJEENIFFLooIGGLox 9712 55 ooBBMxDDDKMoAAJKoNooJEENIFFLooIGGLHH 8257 54 oxCCMoDDDKMoAAJKooooJLEEIFFLoNIGGoxN 6355 54 oooJLxCCCJLoHAAKooHoIKDDooIEEMoFFoxM 3461 54 oooJxoCCCJLoHAAKLoHoIKDDooIEEMoFFoxM 2948 54 BBBKCCDDoKoLIAAKoLIoJEEMFFJooMooxoHH 1845 53 53 ooBBoxDDDKooAAJKoMooJEEMIFFLooIGGLHH 4228 53 ooBBoxDDDKooAAJKoMooJEEMIFFLooIGGLox 4102 52 oxCCMNDDDKMNAAJKooooJEEoIFFLooIGGLox 7178 52 oxCCMNDDDKMNAAJKooooJLEEIFFLooIGGHHo 5717 51 xCCoLMooJoLMAAJoLNHIDDDNHIoKEExooKGG 9360 51 GBBoLogHIoLMGHIAAMCCCKoMooJKDDEEJFFo 4780 50 BBIooMGHIoLMGHAALNGCCKoNooJKDDooJEEx 14385 50 ooIBBBooIKooAAJKoLCCJDDLGHEEoLGHFFoo 4643 50 ooooxoCCCJLoAAIJLMooIDDMHEEKooHFFKox 3874 50 ooooLxCCCJLoAAIJoMooIDDMHEEKooHFFKox 3676 50 ooooLxCCCJLoAAIJoMooIDDMHEEKooHFFKGG 3169 50 ooooxoCCCJLoAAIJLMooIDDMHEEKooHFFKGG 2966 50 ooxCCLDDoKOLIAAKooIoJKEEFFJooMGGGHHM 1845 50 BBBJCCHooJoKHAAJoKooIDDLEEIooLooxoGG 1066
Описание доски представляет собой строку из 36 символов, представляющую состояние неразгаданной доски. Это двумерный массив 6x6 в порядке строк. Персонажи в описании следуют этим простым правилам:
-
o
пустая ячейка -
x
стена (фиксированное препятствие) -
Основная часть A
(красная машина) -
B - Z
все остальные детали
Я использовал строчные буквы или
вместо точек .
для пустых ячеек в базе данных, чтобы все описание платы можно было выбрать двойным щелчком. Мой код может анализировать любой формат.
Загрузка базы данных
База данных содержит все «интересные» головоломки 6×6 «Час пик» с двумя стенами. В базе данных 2 577 412 головоломок, охватывающих 9 698 093 879 достижимых состояний. Стены имеют размер x
в нижнем регистре, поэтому вы можете легко найти их по желанию.
- Предварительный просмотр базы данных: rush2000.txt (44K)
- Скачать bzip2: rush. txt.bz2 (23M)
- Скачать gzip: rush.txt.gz (33M)
Утилиты
Мой код включает в себя несколько служебных двоичных файлов, написанных на Go для решения головоломок, рендеринга головоломок и т. д.
Для рендеринга платы:
$ запустите cmd/render/main.go GBB.L.GHI.LMGHIAAMCCCK.M..JKDDEEJFF. out.png
Чтобы создать файл .dot для Graphviz и затем отобразить его:
$ go run cmd/graph/main.go ..xCCLDD.K.LIAAK..I.JKEEFFJ..MGGGHHM > graph.dot $ dot -Tpng graph.dot > graph.png
Чтобы решить головоломку:
$ запустите cmd/solve/main.go GBB.L.GHI.LMGHIAAMCCCK.M..JKDDEEJFF. {true [F+1 K+1 M-1 C+3 H+2 J-1 E+1 G+3 B-1 I-1 A-3 I+1 L+1 B+3 I-1 A+ 2 Г-3 Е-1 H-3 A-1 J+1 C-3 M+1 B+1 K-4 A+1 C+2 D-1 F-1 H+3 A-1 K+1 B-1 M-1 C+ 1 J-1 E+1 G+3 A-1 I+1 B-3 I-1 A+1 G-1 E-1 J+1 C-1 K-1 L-1 M+3 A+3] 51 81 51 2756 229984}
Отрицательные ходы вверх или влево, положительные ходы вниз или вправо.
Онлайн-игра
Я написал онлайн-версию, в которую можно играть. Я использовал p5.js для его создания. Нажмите «Случайно», чтобы запустить случайную головоломку из моей базы данных.
Попробуйте сами
Код находится на GitHub по адресу https://github.com/fogleman/rush.
Топ 23
Для решения 23 лучших головоломок в базе данных требуется 50 или более ходов. Вот они.
Нажмите на один из них, чтобы воспроизвести его в браузере!
60 ходов, 2332 состояния
58 ходов, 9192 состояния
55 ходов, 9712 состояний
55 ходов, 8257 состояний
54 хода, 6355 состояний
9 0002 54 хода, 3461 состояние54 хода, 2948 состояний
54 хода, 1845 состояний
53 хода, 4705 состояний
53 хода, 4228 состояний
53 хода, 4102 состояния
52 хода, 7178 состояний
52 хода, 5717 состояний
51 ход, 9360 состояний
51 ход, 4780 состояний
50 ходов, 14385 состояний
50 ходов, 4643 состояния
50 ходов, 3874 состояния
50 ходов, 3676 состояний
50 ходов, 3169 состояний
50 ходов, 2966 состояний
50 ходов, 1845 состояний
50 ходов, 1066 состояний
Заключение
Я считаю, что методы, описанные в этой статье, продвигают текущий «современный уровень» решения игры «Час пик». Докажите, что я ошибаюсь, и я буду в восторге!
Дайте мне знать, если вы сделаете что-нибудь интересное с кодом или базой данных!
App Store: Rush Traffic -Block Jam Master
Описание
Это оригинальная головоломка Traffic My Car с выдвижным блоком.
ОСНОВНЫЕ ХАРАКТЕРИСТИКИ:
+ Четыре уровня сложности — легкий, средний, сложный, эксперт
+ Измеряет ваш результат по личному рекорду и идеальному результату
+ Кнопка «Решить», чтобы увидеть, как это делается
+ Быстрое и простое руководство
+ Сохраняет история «Решенных» и «Идеально решенных» задач
Версия 2.7
исправлена ошибка
Рейтинги и обзоры
128 оценок
Викстер
Здорово играть в вызов, который не стоит вам и руки и ноги, чтобы пройти его !! Нравится эта игра. Имейте это дома, и это так же хорошо на линии
Полностью испорчен рекламой
Это очень хорошая игра, но она полностью испорчена рекламой, когда после каждого уровня появляется как минимум два, а учитывая, что уровней 784, это смехотворное число. Кроме того, маленькому ребенку очень сложно понять, как убрать рекламу после каждого уровня, поэтому взрослый должен постоянно находиться рядом. Я бы предпочел просто заплатить разумную плату, чтобы избавиться от рекламы, но это не представляется возможным.
Отличное приложение
Эта игра ПОТРЯСАЮЩАЯ, я не могу объяснить, она похожа на настольную игру под названием «Час Пик», и она великолепна. Действительно заставляет задуматься и увлечься 😂. Некоторые головоломки очень сложные, даже в разделе для начинающих 😉
Миллионы уровней, так много, отличная вещь, чтобы занять вас 🙃
Разработчик Huiying YIN указал, что политика конфиденциальности приложения может включать обработку данных, как описано ниже.