Show HN: Scroll through all 43252003274489856000 Rubik's Cube states
211 points by Alen123 13 hours ago | 69 comments

noduerme 6 hours ago
I wrote a 3d rubiks cube slot machine for my old online casino. It scrambled the cube randomly 4 times and gave the player 60 seconds to solve it by twisting up to 3 times. Lots of weird quaternion math to handle the spinning and shift key twisting at the same time. All with simple geometry in Away3D / AS3.

The real hard part of designing that game was creating the payout structure. The game paid an equal amount for each "line" of 3 colors in a row on any face after the player made their third move. There was a progressive take and jackpot for a perfect solution. And I specifically wanted to target a zero house edge for the game, to reward the best problem solvers. So the question was, given 4 random twists off a perfect cube, what are the individual chances of getting 64, 63, 62...1 lines of sequential color given the best 3 spins from the initial random state, and then hiw to allocate the payout structure accordingly.

Probably a billion monte carlo runs and I had a pay table. It was lots of fun. I wish more gambling games rewarded skill that way.

reply
divbzero 6 hours ago
Casino games are rarely zero house edge. Is there a way you signaled this feature to problem solvers? Did the game prove to be successful?
reply
crucio 2 hours ago
any time there is skill in an online casino game where money is involved, there is cheating too
reply
gosub100 5 minutes ago
Plus this would seemingly violate compliance with laws protecting disabled people. For instance, someone with mobility issues might know the solution but wouldn't be able to hit the buttons in time.
reply
DonHopkins 2 hours ago
Just change the parity by swapping two stickers on a corner piece, and no amount of skill can solve it.
reply
huflungdung 3 hours ago
[dead]
reply
zetanor 9 hours ago
Sweet, can I mint these as NFTs? I don't know how to multiply 43252003274489856000 by 50 USD but I think it could make me a lot of money, and I like money.
reply
kdavis 4 hours ago
Donald, is that you?
reply
HPsquared 5 hours ago
That's more money than there is in the universe, I think you're onto a winner here!
reply
hahahaa 5 hours ago
You only need to sell one at $50, then market cap does the rest and you are boundlessly rich.
reply
sail0rm00n 5 hours ago
If we can capture even 1% of the market…
reply
thih9 5 hours ago
In case someone is curious, NFTs were tradeable tokens popular for a short while in the early 2020s.

> Initially pitched in 2017 as a new class of investment asset, NFT trading increased from US$82 million in 2020 to US$17 billion in 2021. Its market was occasionally compared to an economic bubble or a Ponzi scheme. In 2022, the NFT market collapsed; a May 2022 estimate was that the number of sales was down over 90% compared to 2021. By September 2023 one report claimed that over 95% of NFT collections had zero monetary value.

https://en.wikipedia.org/wiki/Non-fungible_token

/s

reply
avadodin 2 hours ago
The reason NFTs "failed" is that the "assets" were jpegs with infinitesimal intrinsic value(pre–ai slop) and even less market appeal.

We have people wasting money on jpegs and people wanting to own things outside of game inventory screens even today. Something akin to NFTs could still become a part of the economy.

reply
jcims 11 hours ago
My scroll wheel covers about 12 states per inch of travel. Did the stubby pencil work and it would take about 9.5 years to scroll through them all if the wheel surface was moving at the speed of light.
reply
soupspaces 10 hours ago
Auto rotate and auto scrolling would be neat.

Edit: also 2D https://www.github.com/AdamWhiteHat/RubiksCubeControlWpf

reply
dcanelhas 2 hours ago
This is a nice visualization. Are there any keyboard keys to just advance one position along the line? I tried the arrow keys but they jumped quite far.

I don't know how this was generated (BFS and flattening?) it seems adjacent indices aren't just one move apart ... but they could be!

There is a Hamiltonian circuit for Rubik's cube: https://bruce.cubing.net/ham333/rubikhamiltonexplanation.htm...

Following the circuit would be like Gray codes instead of binary digits. You only flip one bit at a time when going to the next number.

reply
snowwrestler 9 hours ago
Reminds me of a book I recently read:

https://en.wikipedia.org/wiki/A_Short_Stay_in_Hell

The numbers produced by permutations are astounding! Especially compared to the (much smaller) numbers in our actual physical universe.

reply
somenameforme 7 hours ago
My favorite one is chess games. If you managed to compress each chess game down to just a single atom, the physical size of a disk to save this data would exceed the amount of atoms in the universe. Even the number of theoretic positions (ignoring legality/possibility) is just below the number of atoms in the universe.

Though it must be said that once one starts looking at permutations of things, the number of atoms in the universe seems quite small indeed. 10^80? What's that, like 7 or 8?

reply
notpushkin 5 hours ago
The number of permutations of n distinct objects is n!. So, probably a bit more than 8, since 8! < 10⁸, but I don’t think you are terribly off :-)

Edit: 58! < 10⁸⁰ < 59!

reply
theginger 2 hours ago
Anyone else surprised how small the number is? It looks quite big without commas but if you add them in it looks like the sort of number that is almost conceivable 43,252,003,274,489,856,000 43 quintillion, that's the type of number i've vaguely heard of. Compared to the number of possibilities for a shuffled deck of cards 80,658,175,170,943,878,571,660,636,856,403,766,975,289,505,440,883,277,804,000,000,000,000 Thats a big number, and weirdly I think those 00s at the end are exact not a rounding error.
reply
xboxnolifes 2 hours ago
It felt pretty big to me, considering Rubik's cubes only have 26 pieces, their valid slots are not all the same, and some of their states are mirrored.
reply
PaulHoule 11 hours ago
Reminds me of that time when, as an undergraduate, my "team" entered a Problem Solving Competition and couldn't choose one of the two problems so we did both in parallel.

One of us wrote a program in BASIC on a Tandy 1000 that the rest of us estimated would take more than a google years to finish, but he wasn't be dissuaded and let it run the whole weekend.

I made an analysis that was mostly correct but was off by a factor of four because I mistook a radius for a diameter.

reply
amelius 41 minutes ago
Maybe show the minimum number of moves required to solve each state :)

And maybe sort them by "distance to solved".

reply
Waterluvian 11 hours ago
Ah nice, it has some of my favourites!
reply
r4ndomname 11 hours ago
I am very curious about your other favorites it does but have.
reply
Waterluvian 11 hours ago
My kids had a science battle in the basement last summer, which resulted in both their Rubik’s Cubes colliding mid air. They both exploded (the cubes, not the kids) and were reassembled at a “fix this before mom finds us” rush speed.

I think my favourite is this pattern my 9 year old makes on “Greeny” (that’s his pet name for the cube that now has 11 green squares) where all four top corners are red/white/blue.

reply
bambax 6 hours ago
When I was a kid (many, many moons ago) I found a solved Rubik's Cube in a house where we were staying. I played with it and soon enough couldn't put it back in its solved state.

So I took it apart and rebuilt it 'properly', which didn't take long and wasn't too hard. I wonder how many people did the same.

reply
tgv 7 hours ago
This here is the difference between theory and practice. Our minds are to feeble to understand reality.
reply
arealaccount 2 hours ago
> Application error: a client-side exception has occurred (see the browser console for more information).

On ios Firefox and Safari unfortunately, would love to see this site

reply
danhardman 56 minutes ago
What's the correct way to sort a Rubik's Cube state?
reply
olek1983 4 hours ago
There are 43,252,003,274,489,856,000 (~4.3 × 10¹⁹) different positions. 1. If I try every position (1 position/sec) knowing it's unique, it will take me 1.37 trillion years. 2. If the pro tries (let's say 10 positions/sec), it will take 137 billion years. The universe is younger than that. :-D

Wondering how fast the machine or computer will do that?

reply
Spare_account 3 hours ago
Here is another way of looking at the same question:

https://news.ycombinator.com/item?id=49252106

reply
ostacke 4 hours ago
reply
monxer 5 hours ago
This is pretty cool. Same concept (and I would assume implementation) as https://everyuuid.com/

Implementation details can be found here: https://eieio.games/blog/writing-down-every-uuid/

reply
sensecall 7 hours ago
Wouldn't it be cool to click and then see the quickest solution and it rotates in front of you, or a sequence of moves to solve.
reply
Aoi_Asahina 3 hours ago
[dead]
reply
nzealand 9 hours ago
It took Ernő Rubik four years to develop the cube.

He immediately scrambled it, then spent the next month figuring out if it could be solved.

Luckily no one told him there were 43 quintillion valid combinations.

reply
avandekleut 9 hours ago
Solved theoretically? I figure you could at least intuit that reversing all the moves in the scramble in reverse order would solve it.
reply
nzealand 25 minutes ago
He spent the next month coming up with an algorithm to solve it, not knowing if such an algorithm was even possible.

After he sold the puzzle, he traveled around to various conferences, to prove it could be solved.

reply
zamadatix 8 hours ago
The above makes everything sound very intentionally done towards the end result. He came about making the cube for finding ways to tackle the engineering challenge of building a device which moves in such levels if freedom, ended up scrambling it, and then spent a month figuring out how to treat the scrambled state as a puzzle to be solved. Messing with it gave him insight into just how complex a puzzle it was and the rest goes from there.
reply
netvarun 11 hours ago
Wow, this was really fun to play around with! Amazing execution and launch!

Quick feedback: it’d be great if the page updated when the URL changes, so you can explore different positions without reloading.

Right now, if I change the URL/hash of the cube position (eg: incrementing by 1 https://everycube.alen.is/?view=3d#5319001606686939024 ), the app doesn’t update and I have to open the new URL in a separate tab to see the new position. [Chrome 150 on Mac OS X 10.15.7]

reply
Alen123 10 hours ago
just shipped a fix, the app now listens for hash/URL changes and updates the view without needing a reload. thanks for catching this!
reply
cr125rider 11 hours ago
I love this. Excellent weird internet thing.
reply
kazinator 7 hours ago
OK. So I put the slider into a random middle location. Then I zipped it back all the way left as fast as I could. Still not up to competitive speed cubing level! Shucks, golly, gee.
reply
richstokes 9 hours ago
First thought; this could be turned into a really cool password generator
reply
purplemoonx 9 hours ago
How did the kid who could solve the Rubik's Cube in under 1 min not become an algorithm designer - some genius backend dev?

I blame guitars.

All these kids got bad ass at playing Wonderwall, PHP was just slightly less cool than playing Wonderwall. So for 2-4 years they were sidetracked.

Playing Wonderwall at parties.

But if they had went straight from solving Rubik's Cube in 1 min to O(1) time complexity in a REST endpoint like peak 2-way communications (WebSocket, GRPC) these fuckers would be optimizing LLM embeddings at this point.

Karpathy? No, I want Steve from the Chess club who could recite any J.R.R. Tolkien writing, who has a Runescape character worth $4 million. Fuck LeCunn. Where's Steve?!

STEVE! I'm sorry I laughed at your Pokemon collection. I'm sorry Steve! I'm fucking sorry! PLEASE COME BACK

reply
eurleif 9 hours ago
With all due respect to Steve, under 1 minute isn't that impressive. You can get there just by doing the beginner's method (a handful of different move-sequences) rapidly. The people who really study Rubik's Cube algorithms in depth can do it in a few seconds.
reply
purplemoonx 9 hours ago
Hahah what are you doing here???

I had a friend - David - he could do it insanely quick. He's basically who I am thinking of in my post since he was also a genius at guitar, and could play beautifully. And he taught me basic PHP.

We spent a lot of time on your site on random Friday nights (him playing guitar) hahah, good times.

More of a yo-yo guy myself. I could walk the dog, pendulum, what-have-you. Around the world if I'm feeling saucy

Also: Gross, wtf happened to it???? If you can't say publicly, just blink 3 times

reply
tonyedgecombe 7 hours ago
I remember a TV program showing someone breaking the one minute record for the first time. I could already do it at that point, I'm sure many others could as well.
reply
purplemoonx 6 hours ago
I'm starting to realize I'm the only one who couldn't.

I think that's why I failed that Leetcode that one time - it was never in the cards

reply
opan 9 hours ago
>How did the kid who could solve the Rubik's Cube in under 1 min not become an algorithm designer - some genius backend dev?

Somebody else figured out the algs. The speedcubers just rote memorize them and then practice becomes mostly about execution. (Oversimplifying a little, but I have gotten sub-60 myself with the Roux method a few years ago)

Interestingly I've never managed to pick up programming but learned the cube pretty well (as an adult), and my programmer friend can't seem to figure out the cube at all even with me giving him extra help on top of linking materials I learned from. I suspect it's a very different skillset and we're both weak in one area.

reply
purplemoonx 8 hours ago
Yeah goes to show why Leetcode is such a problem for so many very good developers.

It's a different kind of thinking.

That said, if that "clicked" for you, you may find yourself surprisingly good at backend - algorithmic thinking shines in crypto, search, and LLMs. Get into Python or Node if you haven't for some random idea (ever wanted to make a web contact form or something?) - the LLMs will set you up for success. If you figured out Rubik's Cube, you will 1000% get it because I know you have the patience and learning ability.

----

There is one algorithm I saw recently on Youtube, the bro pops one of the little cubes off and "cheats" by turning it around manually.

I consider this to be "freestyling" with the Rubik's Cube. Wtf is that all about?

reply
m4tthumphrey 5 hours ago
This is very satisfying to play with, top work!
reply
idorube 6 hours ago
But, why?
reply
jordanarseno 9 hours ago
structure emerges from chaos at 23,738,673,083,197,685,761 & 34,677,398,788,068,093,945
reply
bambax 6 hours ago
True! How did you spot this though? Did you look at every possible position?!?
reply
mlni 4 hours ago
I bet they entered the scramble U2 D2 R2 L2 F2 B2 or something to that effect. My 9yo loves this pattern.
reply
ajkjk 7 hours ago
well that's just like, your coordinate system, man
reply
donkeylazy456 11 hours ago
literally doom scrolling
reply
Alen123 10 hours ago
haha healthiest possible doom scroll though
reply
skcurf 8 hours ago
Cool!
reply
pestatije 6 hours ago
this does permutations of pieces position and orientation

would be cool permutations of moves instead...the visuals would be especially interesting to have as a raw Rubik's simulator

reply
skcurf 8 hours ago
cool!
reply
tkocmathla 6 hours ago
It would be really funny, and sociopathic, if every state change registered as a browser history entry so I had to click Back 50,000 times to get back to Hacker News.
reply
russum 5 hours ago
Oh wow, you don’t do “Open in New Tab” when reading HN? Thanks for the idea, I should really try that, maybe it will help with my infinite open tabs problem.
reply
maxlin 6 hours ago
I think you missed at least a few, can you re-check through them?
reply
Aoi_Asahina 6 hours ago
[dead]
reply
lee337 6 hours ago
[flagged]
reply
Mathsystem 9 hours ago
[flagged]
reply
jocelyner 8 hours ago
[dead]
reply
venera22 10 hours ago
[dead]
reply
khazhoux 10 hours ago
At some point though, how many states is too many?

We have massive housing affordability and employment shortage problems, meanwhile here’s a tech elite flouting 4x10^9 states which he doesn’t pay taxes on and most of them will not even get used. Is that really fair?

reply
DerekL 10 hours ago
It's actually about 4x10^19 (exponent 19, not 9).
reply
msl 6 hours ago
Imagine being so well off that you don't even notice being off by ten orders of magnitude. Meanwhile, there are people dealing with negative exponents.
reply
khazhoux 8 hours ago
Typo, but this just shows the extreme inequity when one cube amasses so many states.
reply
cuoder 10 hours ago
Non-AI posts be like
reply