Comments 44
(т.к. процесс перемешивания граней кубика следует физическим процессам)
P.S. Нельзя же, наверное, просто случайно сгенерировать цвета квадратиков кубика?
Вроде можно из любой конфигурации перейти в любую другую. Т.е. можно сгенерировать случайно, но с учётом ограничений на угловые элементы, элементы на рёбрах и остальные элементы. К примеру, элементов на рёбрах ровно 12 видов (пар цветов), они размещены на рёбрах случайно и случайно повёрнуты, элементов каждого вида N-2, где N — длина ребра кубика.
1. Проверка валидности уголков
2. С ребрышками чуть сложнее, но можно для каждой орбиты ребрышек задать случайную подстановку и по ней расположить
3. На каждой орбите одностикерных элементов проверка правильного количества каждого из цветов
Для нечетного размера еще должны быть 2 проверки у центральных ребрышек: на четность подстановки (относительно угловых) и на четность ориентации
Спросите у розы в саду, какая в ней практическая польза. Для программистов — как минимум тренировка.
<зануда_on>
Из розы можно сварить отвар(возможно лечебный, я далёк от медицины поэтому не могу точно сказать за инфу по этому поводу в интернете)
Также можно сделать духи(пользы мало, но приятный аромат, что приносит удовольствие{но некоторым он может не понравиться, да и аллергия не исключена})
Просто роза тоже приносит удовольствие, но могут быть теже побочные условия как в случае с духами…
</зануда_on>
Вопрос в другом: ок, алгоритм как тренировка. А в чем практическая польза выполнения задачи по решению кубика?
Избегайте такого поведения, люди.
Коллективное бессознательное хабросообщества очень нервно реагирует на вопросы о практической пользе гиковских выдумок. Они самоценны и эта самоценность зачастую довлеет над здравым смыслом.
+ предрассудки. Те самые, которые перед рассудком.
P.S. как нахватать миллион минусов? Да очень просто: найти у этого коллективного бессознательного больную мозоль и на неё наступить. В силу некоторых особенностей окружающего мира таких больных мозолей много. И больные мозоли у разных людей пересекаются, образуя группы мозолей, а там и до супермозолей доходит.
P.P.S Это потянуло бы на юмористическую статью, но до первого апреля далеко, да и психологического образования мне не хватает.
Внутренний голос подсказывает, что решай он на GPU, было бы разы быстрее, но может ошибаюсь.
Внутренний голос подсказывает, что решай он на GPU, было бы разы быстрее, но может ошибаюсь.
Если там много ветвлений, то польза от GPU сомнительно. А их там скорее всего много, на каждом ходу. И каждый следующий ход зависит от предыдущего, поэтому спекулятивное выполнение здесь вряд ли сработает.
Алгоритм решения включает всего семь действий.
Вот так, умудриться написать, обо всём и одновременно ни о чём. Что за действия, что за алгоритм.
Для CFOP возможных комбинаций по этапам — 41 (F2L) x 57 (OLL) x 21 (PLL), для каждого варианта каждого этапа — свой алгоритм.
Да, можно одним алгоритмом (той же лямбдой, для примера) собрать кубик, но это далеко не оптимально и совсем не быстро.
У меня вышло 65536×65536 (мне нравятся степени двойки)».
Поэтому он решил остановиться на кубике в четыре раза меньшего размера, то есть 32768×32768.Только меня это смутило?
Как альтернативный пример можно привести разрешения экрана FullHD и 4K.
Площадь поверхности — в 4 раза меньше, а, как, например, мой алгоритм сборки, так и объем памяти, необходимый для хранения, пропорционален именно площади поверхности
Сам венгерский изобретатель Эрнё Рубик предложил несколько вариантов, а вообще ничто не мешает делать кубики произвольного размера.
Вообще-то сделать кубик произвольного размера мешает геометрия. Если сделать кубик больше, чем 5х5х5, то при повороте слоя на 45 градусов угловые кубики просто вывалятся.
У оной проблемы как минимум 2 решения:1. Чуть изменяем пропорции малых квадратиков так, что крайние чуть больше 2. хитрые металлические штыри все подлдерживающие (как у кубика 2х2х4)
Собрать компом кубик по чужому алгоритму — дело абсолютно бессмысленное и не требует высокой квалификации ни программиста ни математика.
Вот, если он запутыывание умное делал, тогда было бы лучше об этом написать
Домашний ПК с 32 ГБ RAM за четыре месяца решил кубик Рубика 32768×32768×32768