View
171
Download
4
Category
Tags:
Preview:
Citation preview
RUBIK'S CUBEFORMULA IN PYCUBER
Adrian Liaw
ABOUT MEJunior high school studentHome-schooling"Learning Reinforcer" at Agilearning
OTHER INTERESTSClassical Piano
AGENDAWhy / What's PyCuberSeveral Parts in PyCuberRubik's Cube (And Notations)ImplementationsThings About Rubik's Cube
JUST FOR FUN
IMPLEMENT PARTS INPYCUBER
cube.pyformula.pysolver/
RUBIK'S CUBE
ERNŐ RUBIK
RUBIK'S CUBE
RUBIK'S REVENGE
PROFESSOR'S CUBE
OVER THE TOP
POCKET CUBE
...
NOTATIONS
SINGMASTER NOTATION
BASIC NOTATIONSR (right)L (left)U (up)B (bottom)F (front)B (back)
R
L
U
D
F
B
F'
U2
WIDE TURNS
r
l'
d2
WHOLE CUBEROTATIONS
x
y'
z2
IT'S TIME FOR SOME PYTHONIC STUFF
CLASSESStepFormula
STEPface (F, L, d, y)extra symbol (counter-clockwise, 180 degrees)
SEVERAL UTILITIES__add____mul____hash__
FORMULAIt's just a sequence of Steps
class Formula(list):
INITIALISING A FORMULAFormula([Step("R"), Step("U")])Formula("R U R' U'")
SEVERAL UTILITIES__mul____eq____lt__...etc
REWRITING METHODSappendinsertcountremove__contains__
REWRITING METHODS__add__extend
SPECIAL CASE!Formula.reverse
L2 U' R -> R' U L2
USEFUL METHODS
MIRROR!Formula.mirror()
L2 U' R -> R2 U L'
RANDOMFormula.random()
OPTIMISEFormula.optimise()
OPTIMISENo wide actionsNo whole cube rotationsNo repeated steps
INTERESTING FACTS
RUBIK'S CUBE IS 41 YEARS OLD!
FASTEST SOLVE
5.25 SECONDS BY COLLIN BURNS
FASTEST ONE-HANDED SOLVE
6.88 SECONDS BY FELIKS ZEMDEGS
FASTEST BLINDFOLDED SOLVE(Including memorisation)
21.17 SECONDS BY MARCIN KOWALCZYK
FASTEST NON-HUMAN SOLVING
3.253 SECONDS BY CUBESTORMER III
EVERY LEGAL PERMUTATION CAN BESOLVED IN 20 MOVES OR LESS
THERE ARE 43,252,003,274,489,856,000POSSIBLE PERMUTATIONS
HTTP://GITHUB.COM/ADRIANLIAWHTTP://GITHUB.COM/ADRIANLIAW/PYCUBER
pip install pycuber
“If you are curious, you’ll find the puzzles around you. If youare determined, you will solve them.”
– Ernő Rubik.
Recommended