I was surfing on internet when I came across a really interesting question -

How many scrambled Rubik's Cube configurations exist such that it takes exactly 7 moves to solve the cube.

Now while the problems sounds easy from the view that we just need to find the number of ways to shuffle a Rubik's Cube in 7 moves, it will be incredibly hard to prove that there doesn't exist a shorter way to solve the cube.

Can only one provide solution to the problem?

Details and Assumptions

• You are supposed to solve any given configuration in fewest moves possible.

• Any $90°$ or $180°$ turn counts as a single turn while $-90°$ and $-180°$ counts as a single turn. Meaning, we are using half or semi turn metric.

• To familiarize yourself with Rubik's Cube's notations, please check this website - Rubik's Cube Notation:

Rubik's Cube Notations

• If you want to familiarize yourself with how Rubik's Cube works, check this applet.

Bonus, can you find the answer for other value in place of 7?

Note by Arulx Z
4 years, 3 months ago

This discussion board is a place to discuss our Daily Challenges and the math and science related to those challenges. Explanations are more than just a solution — they should explain the steps and thinking strategies that you used to obtain the solution. Comments should further the discussion of math and science.

When posting on Brilliant:

• Use the emojis to react to an explanation, whether you're congratulating a job well done , or just really confused .
• Ask specific questions about the challenge or the steps in somebody's explanation. Well-posed questions can add a lot to the discussion, but posting "I don't understand!" doesn't help anyone.
• Try to contribute something new to the discussion, whether it is an extension, generalization or other idea related to the challenge.
• Stay on topic — we're all here to learn more about math and science, not to hear about your favorite get-rich-quick scheme or current world events.

MarkdownAppears as
*italics* or _italics_ italics
**bold** or __bold__ bold
- bulleted- list
• bulleted
• list
1. numbered2. list
1. numbered
2. list
Note: you must add a full line of space before and after lists for them to show up correctly
paragraph 1paragraph 2

paragraph 1

paragraph 2

[example link](https://brilliant.org)example link
> This is a quote
This is a quote
    # I indented these lines
# 4 spaces, and now they show
# up as a code block.

print "hello world"
# I indented these lines
# 4 spaces, and now they show
# up as a code block.

print "hello world"
MathAppears as
Remember to wrap math in $$ ... $$ or $ ... $ to ensure proper formatting.
2 \times 3 $2 \times 3$
2^{34} $2^{34}$
a_{i-1} $a_{i-1}$
\frac{2}{3} $\frac{2}{3}$
\sqrt{2} $\sqrt{2}$
\sum_{i=1}^3 $\sum_{i=1}^3$
\sin \theta $\sin \theta$
\boxed{123} $\boxed{123}$

Sort by:

According to this. there are $100,803,036$ different configuration of the rubiks cube that can be solved with $7$ moves.

Here is the table for the $20$ moves. Above that all of the $43,252,003,274,489,856,000$ configurations are solvable.

image

- 4 years, 3 months ago

In fact, after it was discovered that all Rubik's Cube configurations were solvable with at most $20$ moves, the number $20$ became known as "God's Number".

- 4 years, 3 months ago

I know this table. In fact this question arose from this table itself. But is there any way to prove the number?

- 4 years, 3 months ago

This is a very interesting question. One way to think of it is a complicated graph theory question where we are being asked to compute the shortest distance between two nodes

Staff - 4 years, 3 months ago

I agree. When I saw it, I was like "How do people Think of this?"

It would be interesting to have others' opinions here $\ddot\smile$

- 4 years, 3 months ago

I don't know about number of moves required but I can solve rubiks cube in 50 seconds.

- 4 years, 3 months ago

My record is 18 secs.

- 4 years, 3 months ago

3x3x3 rubik cube has 43.252.003.274.489.856.000 .The above figure is only the state can reach by turning the face. If including the possible status as Rubik's cube disassemble and reassemble the figures up to 519.024.039.293.878.272.000 permutation. But i think that this cube can be solved at most 22 step or less, this information i get from Tomas Rokicki

- 4 years, 3 months ago

It is 20 or less for half turn metric. It was considered to be 22 or less before a recent research.

- 4 years, 1 month ago

Hey How to decrease the solving time, even after a lot of practice I am not able to do that

- 4 years ago

Try buying a lubricated speed cube. Learn new techniques like CFOP etc and learn look ahead method.

- 4 years ago

It is easy enough to calculate the first few numbers like for 7 : 1st move can be any of the 63=18 moves (counting U2 as 1 move ) 2nd move can be any of 53 moves 3rd move can be another 53 moves(repetitions begin) 4th move 53 moves... 7th move 5*3 moves.

however if 1st move is a U move 2nd is a D move and 3rd is a U move again, then it can be solved in less steps. So such pairs result in there being about 148 such possibilities and thus from the above calculated number we subtract 148*(6 moves required to solve cube) However we also need to remember to remove the repitions of sequences like U,D',U2,D2 so effectively we need to subtract 148 times all the numbers in right side.

The answer which you get from this is pretty close (last 4 digits miss) and very time consuming(You need previous answers to get next answer) So this is not at all efficient method, also once you cross 10 moves you get trickier repititions which can be solved by other shortcuts and that means that not really good for more than 4 or 5.

- 3 years ago

This analysis would be very difficult to do. But here's another not so efficient method which may work if optimized.

 1 2 3 4 5 6 7 8 9 int moves[]; /* stores tuples of form (min moves required to achieve the configuration, actual configuration) */ Generate all possible configurations which can be achieved by moving exactly 1 side and store them in array moves[]. Generate all possible configurations which can be achieved by moving exactly 2 side. Then check if the configuration already exists in moves[] array. If it does, discard the configuration or else store it. Generate all possible configurations which can be achieved by moving exactly 3 side. Then check if the configuration already exists in moves[] array. If it does, discard the configuration or else store it. And so on. 

I'll try to improve the run time. In the meanwhile, you can try modelling the Rubik's cube moves into something like a mathematical group and define associate, multiplicative properties etc. Maybe this will make the search very easy...

- 2 years, 12 months ago