Одним из решений является угадать одновременно все возможные маршруты. Это звучит глупо, но вот логика - более 99% возможных схваток будут решены менее чем за 20 ходов. Это означает, что, хотя вы перебираете огромное количество возможностей, вы все равно будете делать это в конце концов. По сути, это будет работать, если вы сделаете свой первый шаг в качестве зашифрованного куба. Тогда у вас будут новые кубы, хранящиеся в переменных для каждого возможного хода в этом первом кубе. Для каждого из этих новых кубов вы делаете то же самое. После каждого возможного перемещения проверьте, завершено ли оно, и если да, то это решение. Здесь, чтобы убедиться, что у вас есть решение, вам понадобится дополнительный бит данных в каждом кубе Рубика, сообщающий о шагах, проделанных для достижения этой стадии.