• Welcome to the Speedsolving.com, home of the web's largest puzzle community!
    You are currently viewing our forum as a guest which gives you limited access to join discussions and access our other features.

    Registration is fast, simple and absolutely free so please, join our community of 40,000+ people from around the world today!

    If you are already a member, simply login to hide this message and begin participating in the community!

how many PLL time attack orders return to solved state?

cuBerBruce

Member
Joined
Oct 8, 2006
Messages
914
Location
Malden, MA, USA
WCA
2006NORS01
YouTube
Visit Channel
There was a similar thread awhile back where I posted Visual C++ source code in [post=536867]this post[/post] for a program that did something similar to what is being discussed in this thread. I note I only considered 13! letter orderings rather than full 21! orderings. But I posted source code so you can try to adapt it as you please.
 

Stefan

Member
Joined
May 7, 2006
Messages
7,280
WCA
2003POCH01
YouTube
Visit Channel
I now have doubts about the feasibility. At least it's not trivial. The AUFs are killing it.

I'd like to use dynamic programming with a table like this:
ways[SET][CASE] = number of ways to order the PLLs in the set SET and end up with case CASE

This would start with:
ways[NONE][SOLVED] = 1

Then fill the table from there and read the result from:
ways[ALL][SOLVED]

Here's my problem: Let's say
ways[{Aa,R,J,H}][H] = 23
ways[{Aa,R,J,H}][E] = 42

and I'd like to compute
ways[{Aa,R,J,H,T}][F]
and consider T as the last in the order.

Using T we can get to F from both H and E, so we should add their numbers to the new cell, right? Sadly not, as because of AUFs, the same order of {Aa,R,J,H} can lead to both H and E, so just adding them together we'd double count.

:(

However, this still works to tell *whether* there is any way to use a set of PLLs to reach a case. And I've envisioned that as the main application anyway - starting your PLL attack some way you want, and have the program tell you whether you can get back to solved using the remaining PLLs (and perhaps show one or several possible ways). On the other hand, I suspect that with six or so left, it's always possible, and that's small enough to brute-force anyway.
 
Last edited:
Top