Cody

Solution 298937

Submitted on 9 Aug 2013 by Alfonso Nieto-Castanon
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
% Load function rubik_rot.m tic %https://sites.google.com/site/razapor/matlab_cody/rubik_rot.m?attredirects=0&d=1 %urlwrite('http://tinyurl.com/matlab-rubik-rot','rubik_rot.m') ; urlwrite('https://sites.google.com/site/razapor/matlab_cody/rubik_rot.m','rubik_rot.m') ; rehash path toc

Elapsed time is 0.193311 seconds.

2   Pass
% For mov=1 solution is 7. Need U' to solve U in 1 move mov_map=[7:12 1:6 13:18]; % Complementary Move mov=1; % U mov_exp1=mov_map(mov); % Solved Cube Vector r=[0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5]; tic r=rubik_rot(mov,r); % Create Challenge Cube toc mov=0; assert(isequal(rubik_solve(r),mov_exp1)) toc

Elapsed time is 0.019696 seconds. y = 7 Elapsed time is 0.032398 seconds.

3   Pass
% For mov=8 solution is 2. Need F to solve F' in 1 move mov_map=[7:12 1:6 13:18]; % Complementary Move mov=8; % F' mov_exp2=mov_map(mov); % Solved Cube Vector r=[0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5]; r=rubik_rot(mov,r); % Create Challenge Cube mov=0; assert(isequal(rubik_solve(r),mov_exp2))

y = 2

4   Pass
% For mov=15 solution is 15. Need D2 to solve D2 in 1 move mov_map=[7:12 1:6 13:18]; % Complementary Move mov=15; % D2 mov_ex3p=mov_map(mov); % Solved Cube Vector r=[0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5]; r=rubik_rot(mov,r); % Create Challenge Cube mov=0; assert(isequal(rubik_solve(r),mov_ex3p))

y = 15

5   Pass
% Anti-Hard code solution Test Case #1 mov_map=[7:12 1:6 13:18]; % Complementary Move mov=randi(18); % anti-hard code Amov_exp=mov_map(mov); % Solved Cube Vector r=[0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5]; r=rubik_rot(mov,r); % Create Challenge Cube Amov=mov; mov=0; assert(isequal(rubik_solve(r),Amov_exp),sprintf('mov=%i mov_exp=%i Provided answer=%i\n',Amov,Amov_exp,rubik_solve(r)))

y = 18 y = 18

6   Pass
% Anti-Hard code solution Test Case #2 mov_map=[7:12 1:6 13:18]; % Complementary Move mov=randi(18); % anti-hard code movB_exp=mov_map(mov); % Solved Cube Vector r=[0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5]; r=rubik_rot(mov,r); % Create Challenge Cube movB=mov; mov=0; assert(isequal(rubik_solve(r),movB_exp),sprintf('mov=%i mov_exp=%i Provided answer=%i\n',movB,movB_exp,rubik_solve(r)))

y = 9 y = 9