Cody

Problem 2344. N-Dimensional Sorting

Solution 449901

Submitted on 4 Jun 2014 by Guillaume
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
%% A(:,:,1) =[33 29 26 28] A(:,:,2) =[ 13 35 22 3] B(:,:,1) =[31 55 26 38] B(:,:,2) =[59 51 36 29] Bsorted(:,:,1) =[26 38 31 55] Bsorted(:,:,2) =[59 29 36 51] assert(isequal(N_Dim_sort(A,B),Bsorted))

A = 33 29 26 28 A(:,:,1) = 33 29 26 28 A(:,:,2) = 13 35 22 3 B = 31 55 26 38 B(:,:,1) = 31 55 26 38 B(:,:,2) = 59 51 36 29 Bsorted = 26 38 31 55 Bsorted(:,:,1) = 26 38 31 55 Bsorted(:,:,2) = 59 29 36 51

2   Pass
%% A(:,:,1) =[22 21 21 9 10 8 28 5 4 8 26 23 22 39 4 39 20 28 1 15 22 13 6 5 1 20 25 32 1 25 32 37 16 9 20 4 28 36 1 13 36 38 13 26 30 1 4 3 21 34] A(:,:,2) =[11 14 34 14 38 21 11 16 12 25 18 23 7 36 16 14 8 18 9 27 34 28 17 6 32 40 3 30 21 14 26 2 17 37 28 8 12 39 17 9 5 4 37 9 39 24 37 39 4 29] B(:,:,1) =[11 19 50 22 1 27 42 7 2 44 38 54 17 31 24 56 30 47 50 3 32 49 13 16 25 38 20 3 3 43 41 33 27 15 56 56 24 57 40 60 10 54 16 20 60 25 41 35 40 54] B(:,:,2) =[52 23 35 18 4 49 17 49 45 8 34 10 40 7 28 26 38 53 48 41 8 19 55 47 52 40 58 10 32 30 52 30 12 16 3 17 45 48 5 19 51 1 4 38 39 5 37 24 2 48] Bsorted(:,:,1) =[25 41 35 50 25 56 49 7 3 24 27 30 13 40 44 38 19 16 2 1 11 54 27 16 60 32 20 50 22 3 38 42 17 15 56 41 24 47 40 43 10 33 3 20 60 56 54 57 31 54] Bsorted(:,:,2) =[51 30 40 2 19 17 58 49 47 30 52 1 55 48 28 26 38 12 38 8 34 17 53 45 41 49 45 10 18 3 5 23 35 5 48 52 10 4 32 52 8 19 48 7 4 40 37 24 16 39] assert(isequal(N_Dim_sort(A,B),Bsorted))

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

3   Pass
%% A(:,:,1) =[1 13 3 33 27 16 23 26 6 15 36 20 14 5 25 1 10 23 40 7 5 40 1 34 6 8 40 3 29 6 26 34 31 8 39 20 31 3 3 25 9 33 21 4 13 22 26 8 32 12 28 6 31 13 5 30 37 24 27 29 33 11 36 32 35 37 40 33 25 1 35 19 27 23 28 22 26 25 34 7 8 27 40 19 23 22 3 24 8 31 36 2 20 1 7 22 12 27 37 20] A(:,:,2) =[ 3 17 30 20 10 5 30 16 23 31 27 18 20 29 10 20 28 29 13 27 20 37 40 26 6 15 32 34 17 22 6 19 40 26 9 29 18 39 10 21 1 1 25 31 21 7 35 10 20 22 7 18 39 14 33 38 29 39 6 32 29 15 27 26 25 7 32 17 19 38 13 25 4 2 27 28 22 5 21 4 19 25 39 1 3 1 6 38 1 32 14 28 34 24 17 32 20 1 29 10] A(:,:,3) =[31 20 16 26 16 23 18 9 11 2 27 16 2 5 27 6 18 10 37 32 25 31 10 2 39 22 18 8 15 23 38 1 34 23 27 1 11 25 19 9 4 20 29 21 21 27 25 22 19 26 19 12 16 30 14 15 14 20 27 24 20 5 14 40 7 10 31 26 39 4 13 19 38 19 24 4 25 26 4 15 37 23 25 36 9 23 28 30 9 3 6 21 24 39 20 20 6 36 37 29] A(:,:,4) =[10 23 2 33 20 8 11 8 36 34 3 3 34 6 3 18 8 7 39 14 10 16 14 17 17 18 37 16 7 13 30 9 27 7 23 9 3 18 23 19 25 15 24 8 31 14 34 8 12 28 5 40 15 30 29 33 9 16 39 20 3 29 21 26 19 26 40 33 9 21 32 39 4 6 16 1 4 9 2 37 11 3 31 15 26 40 19 36 8 34 27 27 36 2 26 13 5 38 27 7] B(:,:,1) =[7 56 21 23 25 19 11 31 37 5 21 23 32 58 52 44 39 56 60 22 46 29 15 5 52 28 7 40 14 20 45 42 36 17 42 50 17 15 49 39 58 40 12 59 34 38 50 3 1 56 3 37 32 29 36 7 4 40 29 25 46 35 20 8 32 19 58 11 22 53 54 21 10 30 28 50 50 3 49 27 12 5 14 41 36 53 34 35 2 5 15 57 25 8 3 49 31 10 39 18] B(:,:,2) =[46 6 48 57 52 47 1 13 26 32 6 57 34 31 37 19 44 36 4 13 13 50 33 53 46 1 9 21 20 16 39 43 9 30 42 43 42 16 37 38 47 23 41 36 33 51 35 33 19 45 41 23 19 43 56 42 38 51 47 54 49 42 24 60 43 1 23 14 30 44 53 23 6 32 44 27 21 8 41 40 50 47 17 6 20 50 7 50 7 31 53 41 40 26 27 17 55 57 19 4] B(:,:,3) =[46 48 58 50 26 5 3 45 36 26 10 59 59 30 49 49 31 37 7 43 51 11 36 7 8 14 3 48 30 46 8 17 23 53 32 6 4 48 6 45 13 48 18 42 22 19 12 34 8 60 2 25 56 43 32 47 6 38 28 47 17 48 7 31 2 18 22 11 53 15 17 55 11 3 43 34 12 48 52 27 30 34 17 24 30 45 10 5 8 12 58 13 51 40 15 8 40 8 17 5] B(:,:,4) =[56 19 59 4 50 17 20 26 22 17 60 12 58 17 49 55 9 28 27 27 40 11 5 22 26 37 15 44 50 45 35 16 12 31 59 15 43 45 21 43 19 33 36 54 30 27 49 8 30 52 29 27 6 59 13 33 22 41 43 43 53 13 26 53 21 28 54 16 36 10 40 3 24 25 43 60 20 19 38 56 5 9 21 26 47 25 37 32 18 55 35 56 14 47 22 47 25 60 50 3] Bsorted(:,:,1) =[7 57 15 8 53 44 34 21 49 36 46 37 40 59 52 28 39 15 58 20 12 35 3 37 22 58 31 32 17 27 19 56 25 2 3 50 21 12 29 56 38 23 56 41 34 50 11 40 30 5 53 50 35 22 18 49 50 3 29 36 45 5 31 14 52 3 17 10 1 39 7 40 10 8 25 46 42 36 23 28 54 4 32 5 25 21 29 11 49 5 15 7 20 39 32 19 58 14 60 42] Bsorted(:,:,2) =[47 23 57 6 20 50 7 6 7 40 46 42 8 32 46 47 6 33 47 42 39 57 13 37 52 51 42 14 4 37 41 23 34 43 4 1 43 41 20 27 53 55 24 30 38 53 21 36 57 33 1 23 48 19 16 50 47 21 41 45 19 44 40 26 43 13 41 50 26 13 6 38 16 53 44 27 1 19 30 32 43 9 51 60 54 49 23 17 31 31 17 35 33 19 56 42 50 9 36 44] Bsorted(:,:,3) =[6 17 59 7 26 13 48 48 52 12 34 40 45 30 15 49 4 37 8 2 58 25 36 36 45 18 6 7 30 30 17 59 58 6 32 47 3 56 8 27 2 31 38 3 26 17 3 34 42 15 8 55 51 53 22 14 48 48 50 46 5 48 17 28 47 45 13 11 43 43 51 34 48 24 60 10 12 18 7 49 19 12 5 17 32 46 10 23 53 5 30 11 8 40 43 8 22 11 31 8] Bsorted(:,:,4) =[60 12 59 38 49 60 43 24 47 3 53 9 28 17 45 29 20 26 25 27 17 25 8 50 43 15 9 19 31 26 56 16 5 54 43 40 22 6 18 21 5 20 44 36 50 47 33 41 30 43 27 11 45 26 10 55 37 26 22 59 37 19 36 21 47 19 56 12 53 22 28 13 21 50 52 35 49 16 59 13 35 15 58 4 30 40 3 32 22 17 33 27 14 27 55 25 54 60 43 56] assert(isequal(N_Dim_sort(A,B),Bsorted))

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

4   Pass
%% A =[26 11 7 4 19 25 23 10 14 40 35 38 32 40 14 12 38 21 20 28 10 7 40 19 15] B =[48 30 24 7 54 4 5 47 30 51 7 25 27 49 22 45 11 42 5 10 20 20 60 38 33] Bsorted =[20 20 24 7 22 45 30 47 30 33 4 5 42 38 54 48 25 27 5 10 7 11 60 49 51] assert(isequal(N_Dim_sort(A,B),Bsorted))

A = 26 11 7 4 19 25 23 10 14 40 35 38 32 40 14 12 38 21 20 28 10 7 40 19 15 B = 48 30 24 7 54 4 5 47 30 51 7 25 27 49 22 45 11 42 5 10 20 20 60 38 33 Bsorted = 20 20 24 7 22 45 30 47 30 33 4 5 42 38 54 48 25 27 5 10 7 11 60 49 51

5   Pass
%% A(:,:,1) =[2 39 20 12 18 29 22 7] A(:,:,2) =[27 39 36 15 21 26 34 31] B(:,:,1) =[26 14 9 27 54 35 7 41] B(:,:,2) =[25 59 16 13 20 41 41 27] Bsorted(:,:,1) =[26 35 9 41 54 14 7 27] Bsorted(:,:,2) =[20 41 41 13 25 59 16 27] assert(isequal(N_Dim_sort(A,B),Bsorted))

A = 2 39 20 12 18 29 22 7 A(:,:,1) = 2 39 20 12 18 29 22 7 A(:,:,2) = 27 39 36 15 21 26 34 31 B = 26 14 9 27 54 35 7 41 B(:,:,1) = 26 14 9 27 54 35 7 41 B(:,:,2) = 25 59 16 13 20 41 41 27 Bsorted = 26 35 9 41 54 14 7 27 Bsorted(:,:,1) = 26 35 9 41 54 14 7 27 Bsorted(:,:,2) = 20 41 41 13 25 59 16 27