Cody

Solution 322127

Submitted on 22 Sep 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
tic feval(@assignin,'caller','score',2000);
2   Pass
%% % 2 1 global cseq cseq{1}=1; % Gift answer max_seq=find_max_swap_seq(2); assert(isequal(1:2,unique(max_seq))) cseq{2}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 1 2 1
3   Pass
%% % 3 2 global cseq max_seq=find_max_swap_seq(3); assert(isequal(1:3,unique(max_seq))) cseq{3}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 2 2 3 1
4   Pass
%% % 4 4 global cseq max_seq=find_max_swap_seq(4); assert(isequal(1:4,unique(max_seq))) cseq{4}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 4 3 1 4 2
5   Pass
%% % 5 7 global cseq max_seq=find_max_swap_seq(5); assert(isequal(1:5,unique(max_seq))) cseq{5}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 7 3 1 4 5 2
6   Pass
%% % 6 10 global cseq max_seq=find_max_swap_seq(6); assert(isequal(1:6,unique(max_seq))) cseq{6}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 10 3 6 5 1 4 2
7   Pass
%% % 7 16 global cseq max_seq=find_max_swap_seq(7); assert(isequal(1:7,unique(max_seq))) cseq{7}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 16 4 7 6 2 1 5 3
8   Pass
%% % 8 22 global cseq max_seq=find_max_swap_seq(8); assert(isequal(1:8,unique(max_seq))) cseq{8}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 21 3 8 7 5 1 6 2 4
9   Pass
%% % 9 30 global cseq max_seq=find_max_swap_seq(9); assert(isequal(1:9,unique(max_seq))) cseq{9}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 26 7 9 3 1 4 8 5 2 6
10   Pass
%% %10 38 global cseq max_seq=find_max_swap_seq(10); assert(isequal(1:10,unique(max_seq))) cseq{10}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 32 8 2 9 3 6 1 10 4 7 5
11   Pass
%% %11 51 global cseq max_seq=find_max_swap_seq(11); assert(isequal(1:11,unique(max_seq))) cseq{11}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 42 5 1 4 10 8 11 7 9 6 2 3
12   Pass
%% %13 80 case 12 global cseq max_seq=find_max_swap_seq(13); assert(isequal(1:13,unique(max_seq))) cseq{12}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 48 3 7 2 8 5 12 10 6 13 4 11 1 9
13   Pass
%% %17 159 case 13 global cseq max_seq=find_max_swap_seq(17); assert(isequal(1:17,unique(max_seq))) cseq{13}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 92 2 8 14 13 9 1 15 5 4 17 10 6 3 12 16 7 11
14   Pass
%% %19 221 case 14 global cseq max_seq=find_max_swap_seq(19); assert(isequal(1:19,unique(max_seq))) cseq{14}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 109 2 5 3 14 8 15 18 11 12 4 6 9 16 13 19 17 10 7 1
15   Pass
%% %23 382 case 15 global cseq max_seq=find_max_swap_seq(23); assert(isequal(1:23,unique(max_seq))) cseq{15}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 122 12 15 1 11 18 16 6 17 23 5 22 8 7 10 4 19 13 14 21 2 3 20 9
16   Pass
%% %29 689 case 16 global cseq max_seq=find_max_swap_seq(29); assert(isequal(1:29,unique(max_seq))) cseq{16}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n')
count 177 7 8 15 21 3 9 18 23 11 5 20 1 12 22 6 28 13 2 29 27 24 16 10 19 26 14 25 17 4
17   Pass
%% %31 819 case 17 global cseq max_seq=find_max_swap_seq(31); assert(isequal(1:31,unique(max_seq))) cseq{17}=max_seq; seq=max_seq; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end fprintf('count %i\n',count) fprintf('%i ',max_seq) fprintf('\n') toc
count 234 25 17 9 7 15 28 16 13 23 4 2 10 1 29 22 8 5 3 19 20 30 24 31 27 14 21 26 12 6 11 18 Elapsed time is 5.861932 seconds.
18   Pass
%% global cseq total=0; for i=2:17 seq=cseq{i}; count=0; while seq(1)>1 count=count+1; seq(1:seq(1))=seq(seq(1):-1:1); end total=total+count; end % 2531 is optimal sum total=sum([0 1 2 4 7 10 16 22 30 38 51 80 159 221 382 689 819])-total; assert(total<2001); % Minimum performance requirement toc feval(@assignin,'caller','score',min(2000,total));
Elapsed time is 5.894403 seconds.