Cody

# Problem 44350. Breaking Out of the Matrix

Solution 1292878

Submitted on 17 Oct 2017 by Reggie Wilcox
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
M=[1 4 7 10; 2 5 8 11; 3 6 9 12]; R=2;C=3; X(:,:,1) =[1 4 7 ; 2 5 8]; X(:,:,2) =[2 5 8 ; 3 6 9]; X(:,:,3) =[4 7 10 ; 5 8 11]; X(:,:,4) =[5 8 11 ; 6 9 12]; assert(isequal(BreakTheMatrix(M,R,C),X))

y(:,:,1) = 1 4 7 2 5 8 y(:,:,2) = 0 0 0 0 0 0 y(:,:,3) = 0 0 0 0 0 0 y(:,:,4) = 0 0 0 0 0 0 y(:,:,1) = 1 4 7 2 5 8 y(:,:,2) = 0 0 0 0 0 0 y(:,:,3) = 4 7 10 5 8 11 y(:,:,4) = 0 0 0 0 0 0 y(:,:,1) = 1 4 7 2 5 8 y(:,:,2) = 2 5 8 3 6 9 y(:,:,3) = 4 7 10 5 8 11 y(:,:,4) = 0 0 0 0 0 0 y(:,:,1) = 1 4 7 2 5 8 y(:,:,2) = 2 5 8 3 6 9 y(:,:,3) = 4 7 10 5 8 11 y(:,:,4) = 5 8 11 6 9 12

2   Pass
x=1:ceil(35+25*rand());r=1;c=1; M=BreakTheMatrix(x,r,c); assert(all(arrayfun(@(y) (M(:,:,y)==y),1:numel(x))))

nR = 1 nC = 54 y(:,:,1) = 1 y(:,:,2) = 0 y(:,:,3) = 0 y(:,:,4) = 0 y(:,:,5) = 0 y(:,:,6) = 0 y(:,:,7) = 0 y(:,:,8) = 0 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 0 y(:,:,4) = 0 y(:,:,5) = 0 y(:,:,6) = 0 y(:,:,7) = 0 y(:,:,8) = 0 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 3 y(:,:,4) = 0 y(:,:,5) = 0 y(:,:,6) = 0 y(:,:,7) = 0 y(:,:,8) = 0 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 3 y(:,:,4) = 4 y(:,:,5) = 0 y(:,:,6) = 0 y(:,:,7) = 0 y(:,:,8) = 0 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 3 y(:,:,4) = 4 y(:,:,5) = 5 y(:,:,6) = 0 y(:,:,7) = 0 y(:,:,8) = 0 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 3 y(:,:,4) = 4 y(:,:,5) = 5 y(:,:,6) = 6 y(:,:,7) = 0 y(:,:,8) = 0 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 3 y(:,:,4) = 4 y(:,:,5) = 5 y(:,:,6) = 6 y(:,:,7) = 7 y(:,:,8) = 0 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 3 y(:,:,4) = 4 y(:,:,5) = 5 y(:,:,6) = 6 y(:,:,7) = 7 y(:,:,8) = 8 y(:,:,9) = 0 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0 y(:,:,26) = 0 y(:,:,27) = 0 y(:,:,28) = 0 y(:,:,29) = 0 y(:,:,30) = 0 y(:,:,31) = 0 y(:,:,32) = 0 y(:,:,33) = 0 y(:,:,34) = 0 y(:,:,35) = 0 y(:,:,36) = 0 y(:,:,37) = 0 y(:,:,38) = 0 y(:,:,39) = 0 y(:,:,40) = 0 y(:,:,41) = 0 y(:,:,42) = 0 y(:,:,43) = 0 y(:,:,44) = 0 y(:,:,45) = 0 y(:,:,46) = 0 y(:,:,47) = 0 y(:,:,48) = 0 y(:,:,49) = 0 y(:,:,50) = 0 y(:,:,51) = 0 y(:,:,52) = 0 y(:,:,53) = 0 y(:,:,54) = 0 y(:,:,1) = 1 y(:,:,2) = 2 y(:,:,3) = 3 y(:,:,4) = 4 y(:,:,5) = 5 y(:,:,6) = 6 y(:,:,7) = 7 y(:,:,8) = 8 y(:,:,9) = 9 y(:,:,10) = 0 y(:,:,11) = 0 y(:,:,12) = 0 y(:,:,13) = 0 y(:,:,14) = 0 y(:,:,15) = 0 y(:,:,16) = 0 y(:,:,17) = 0 y(:,:,18) = 0 y(:,:,19) = 0 y(:,:,20) = 0 y(:,:,21) = 0 y(:,:,22) = 0 y(:,:,23) = 0 y(:,:,24) = 0 y(:,:,25) = 0...

3   Pass
x=eye(7);r=2;c=2; M=BreakTheMatrix(x,r,c); ids=[1 8 15 22 29 36]; urs=ids(1:5)+1; lls=urs+5; z=setxor(1:size(M,3),[ids urs lls]); a1=arrayfun(@(a) isequal(M(:,:,a),eye(2)),ids); a2=arrayfun(@(a) isequal(M(:,:,a),[0 1 ; 0 0]),urs); a3=arrayfun(@(a) isequal(M(:,:,a),[0 0 ; 1 0]),lls); a4=arrayfun(@(a) isequal(M(:,:,a),zeros(2)),z); assert(all([a1 a2 a3 a4]))

y(:,:,1) = 1 0 0 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 0 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,10) = 0 0 0 0 y(:,:,11) = 0 0 0 0 y(:,:,12) = 0 0 0 0 y(:,:,13) = 0 0 0 0 y(:,:,14) = 0 0 0 0 y(:,:,15) = 0 0 0 0 y(:,:,16) = 0 0 0 0 y(:,:,17) = 0 0 0 0 y(:,:,18) = 0 0 0 0 y(:,:,19) = 0 0 0 0 y(:,:,20) = 0 0 0 0 y(:,:,21) = 0 0 0 0 y(:,:,22) = 0 0 0 0 y(:,:,23) = 0 0 0 0 y(:,:,24) = 0 0 0 0 y(:,:,25) = 0 0 0 0 y(:,:,26) = 0 0 0 0 y(:,:,27) = 0 0 0 0 y(:,:,28) = 0 0 0 0 y(:,:,29) = 0 0 0 0 y(:,:,30) = 0 0 0 0 y(:,:,31) = 0 0 0 0 y(:,:,32) = 0 0 0 0 y(:,:,33) = 0 0 0 0 y(:,:,34) = 0 0 0 0 y(:,:,35) = 0 0 0 0 y(:,:,36) = 0 0 0 0 y(:,:,1) = 1 0 0 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 1 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,10) = 0 0 0 0 y(:,:,11) = 0 0 0 0 y(:,:,12) = 0 0 0 0 y(:,:,13) = 0 0 0 0 y(:,:,14) = 0 0 0 0 y(:,:,15) = 0 0 0 0 y(:,:,16) = 0 0 0 0 y(:,:,17) = 0 0 0 0 y(:,:,18) = 0 0 0 0 y(:,:,19) = 0 0 0 0 y(:,:,20) = 0 0 0 0 y(:,:,21) = 0 0 0 0 y(:,:,22) = 0 0 0 0 y(:,:,23) = 0 0 0 0 y(:,:,24) = 0 0 0 0 y(:,:,25) = 0 0 0 0 y(:,:,26) = 0 0 0 0 y(:,:,27) = 0 0 0 0 y(:,:,28) = 0 0 0 0 y(:,:,29) = 0 0 0 0 y(:,:,30) = 0 0 0 0 y(:,:,31) = 0 0 0 0 y(:,:,32) = 0 0 0 0 y(:,:,33) = 0 0 0 0 y(:,:,34) = 0 0 0 0 y(:,:,35) = 0 0 0 0 y(:,:,36) = 0 0 0 0 y(:,:,1) = 1 0 0 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 1 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,10) = 0 0 0 0 y(:,:,11) = 0 0 0 0 y(:,:,12) = 0 0 0 0 y(:,:,13) = 0 0 0 0 y(:,:,14) = 0 0 0 0 y(:,:,15) = 0 0 0 0 y(:,:,16) = 0 0 0 0 y(:,:,17) = 0 0 0 0 y(:,:,18) = 0 0 0 0 y(:,:,19) = 0 0 0 0 y(:,:,20) = 0 0 0 0 y(:,:,21) = 0 0 0 0 y(:,:,22) = 0 0 0 0 y(:,:,23) = 0 0 0 0 y(:,:,24) = 0 0 0 0 y(:,:,25) = 0 0 0 0 y(:,:,26) = 0 0 0 0 y(:,:,27) = 0 0 0 0 y(:,:,28) = 0 0 0 0 y(:,:,29) = 0 0 0 0 y(:,:,30) = 0 0 0 0 y(:,:,31) = 0 0 0 0 y(:,:,32) = 0 0 0 0 y(:,:,33) = 0 0 0 0 y(:,:,34) = 0 0 0 0 y(:,:,35) = 0 0 0 0 y(:,:,36) = 0 0 0 0 y(:,:,1) = 1 0 0 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 1 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,10) = 0 0 0 0 y(:,:,11) = 0 0 0 0 y(:,:,12) = 0 0 0 0 y(:,:,13) = 0 0 0 0 y(:,:,14) = 0 0 0 0 y(:,:,15) = 0 0 0 0 y(:,:,16) = 0 0 0 0 y(:,:,17) = 0 0 0 0 y(:,:,18) = 0 0 0 0 y(:,:,19) = 0 0 0 0 y(:,:,20) = 0 0 0 0 y(:,:,21) = 0 0 0 0 y(:,:,22) = 0 0 0 0 y(:,:,23) = 0 0 0 0 y(:,:,24) = 0 0 0 0 y(:,:,25) = 0 0 0 0 y(:,:,26) = 0 0 0 0 y(:,:,27) = 0 0 0 0 y(:,:,28) = 0 0 0 0 y(:,:,29) = 0 0 0 0 y(:,:,30) = 0 0 0 0 y(:,:,31) = 0 0 0 0 y(:,:,32) = 0 0 0 0 y(:,:,33) = 0 0 0 0 y(:,:,34) = 0 0 0 0 y(:,:,35) = 0 0 0 0 y(:,:,36) = 0 0 0 0 y(:,:,1) = 1 0 0 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 1 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,10) = 0 0 0 0 y(:,:,11) = 0 0 0 0 y(:,:,12) = 0 0 0 0 y(:,:,13) = 0 0 0 0 y(:,:,14) = 0 0 0 0 y(:,:,15) = 0 0 0 0 y(:,:,16) = 0 0 0 0 y(:,:,17) = 0 0 0 0 y(:,:,18) = 0 0 0 0 y(:,:,19) = 0 0 0 0 y(:,:,20) = 0 0 0 0 y(:,:,21) = 0 0 0 0 y(:,:,22) = 0 0 0 0 y(:,:,23) = 0 0 0 0 y(:,:,24) = 0 0 0 0 y(:,:,25) = 0 0 0 0 y(:,:,26) = 0 0 0 0 y(:,:,27) = 0 0 0 0 y(:,:,28) = 0 0 0 0 y(:,:,29) = 0 0 0 0 y(:,:,30) = 0 0 0 0 y(:,:,31) = 0 0 0 0 y(:,:,32) = 0 0 0 0 y(:,:,33) = 0 0 0 0 y(:,:,34) = 0 0 0 0 y(:,:,35) = 0 0 0 0 y(:,:,36) = 0 0 0 0 y(:,:,1) = 1 0 0 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 1 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,10) = 0 0 0 0 y(:,:,11) = 0 0 0 0 y(:,:,12) = 0 0 0 0 y(:,:,13) = 0 0 0 0 y(:,:,14) = 0 0 0 0 y(:,:,15) = 0 0 0 0 y(:,:,16) = 0 0 0 0 y(:,:,17) = 0 0 0 0 y(:,:,18) = 0 0 0 0 y(:,:,19) = 0 0 0 0 y(:,:,20) = 0 0 0 0 y(:,:,21) = 0 0 0 0 y(:,:,22) = 0 0 0 0 y(:,:,23) = 0 0 0 0 y(:,:,24) = 0 0 0 0 y(:,:,25) = 0 0 0 0 y(:,:,26) = 0 0 0 0 y(:,:,27) = 0 0 0 0 y(:,:,28) = 0 0 0 0 y(:,:,29) = 0 0 0 0 y(:,:,30) = 0 0 0 0 y(:,:,31) = 0 0 0 0 y(:,:,32) = 0 0 0 0 y(:,:,33) = 0 0 0 0 y(:,:,34) = 0 0 0 0 y(:,:,35) = 0 0 0 0 y(:,:,36) = 0 0 0 0 y(:,:,1) = 1 0 0 1 y(:,:,2) = 0 1 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 1 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,10) = 0 0 0 0 y(:,:,11) = 0 0 0 0 y(:,:,12) = 0 0 0 0 y(:,:,13) = 0 0 0 0 y(:,:,14) = 0 0 0 0 y(:,:,15) = 0 0 0 0 y(:,:,16) = 0 0 0 0 y(:,:,17) = 0 0 0 0 y(:,:,18) = 0 0 0 0 y(:,:,19) = 0 0 0 0 y(:,:,20) = 0 0 0 0 y(:,:,21) = 0 0 0 0 y(:,:,22) = 0 0 0 0 y(:,:,23) = 0 0 0 0 y(:,:,24) = 0 0 0 0 y(:,:,25) = 0 0 0 0 y(:,:,26) = 0 0 0 0 y(:,:,27) = 0 0 0 0 y(:,:,28) = 0 0 0 0 y(:,:,29) = 0 0 0 0 y(:,:,30) = ...

4   Pass
u=ceil(10*rand())+4; x=magic(u);r=u;c=u; M=BreakTheMatrix(x,r,c); assert(isequal(M,x))

y = 92 99 1 8 15 67 74 51 58 40 98 80 7 14 16 73 55 57 64 41 4 81 88 20 22 54 56 63 70 47 85 87 19 21 3 60 62 69 71 28 86 93 25 2 9 61 68 75 52 34 17 24 76 83 90 42 49 26 33 65 23 5 82 89 91 48 30 32 39 66 79 6 13 95 97 29 31 38 45 72 10 12 94 96 78 35 37 44 46 53 11 18 100 77 84 36 43 50 27 59

5   Pass
temp=ceil(8*rand)+3; x=ones(temp);r=2;c=2; M=BreakTheMatrix(x,r,c); assert(size(M,3)==(temp-1)^2); assert(all(arrayfun(@(a) isequal(M(:,:,a),ones(2)),1:size(M,3))))

y(:,:,1) = 1 1 1 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 0 0 0 0 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 0 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 1 1 1 1 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 0 0 0 0 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 0 0 0 0 y(:,:,3) = 0 0 0 0 y(:,:,4) = 1 1 1 1 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 1 1 1 1 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 1 1 1 1 y(:,:,3) = 0 0 0 0 y(:,:,4) = 1 1 1 1 y(:,:,5) = 0 0 0 0 y(:,:,6) = 0 0 0 0 y(:,:,7) = 1 1 1 1 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 1 1 1 1 y(:,:,3) = 0 0 0 0 y(:,:,4) = 1 1 1 1 y(:,:,5) = 1 1 1 1 y(:,:,6) = 0 0 0 0 y(:,:,7) = 1 1 1 1 y(:,:,8) = 0 0 0 0 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 1 1 1 1 y(:,:,3) = 0 0 0 0 y(:,:,4) = 1 1 1 1 y(:,:,5) = 1 1 1 1 y(:,:,6) = 0 0 0 0 y(:,:,7) = 1 1 1 1 y(:,:,8) = 1 1 1 1 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 1 1 1 1 y(:,:,3) = 1 1 1 1 y(:,:,4) = 1 1 1 1 y(:,:,5) = 1 1 1 1 y(:,:,6) = 0 0 0 0 y(:,:,7) = 1 1 1 1 y(:,:,8) = 1 1 1 1 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 1 1 1 1 y(:,:,3) = 1 1 1 1 y(:,:,4) = 1 1 1 1 y(:,:,5) = 1 1 1 1 y(:,:,6) = 1 1 1 1 y(:,:,7) = 1 1 1 1 y(:,:,8) = 1 1 1 1 y(:,:,9) = 0 0 0 0 y(:,:,1) = 1 1 1 1 y(:,:,2) = 1 1 1 1 y(:,:,3) = 1 1 1 1 y(:,:,4) = 1 1 1 1 y(:,:,5) = 1 1 1 1 y(:,:,6) = 1 1 1 1 y(:,:,7) = 1 1 1 1 y(:,:,8) = 1 1 1 1 y(:,:,9) = 1 1 1 1

6   Pass
x=eye(7);r=7;c=7; assert(isequal(x,BreakTheMatrix(x,r,c)))

y = 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1