Cody

# Problem 1160. Gene Sequence Contest: Retro

Solution 185242

Submitted on 3 Jan 2013 by James
• Size: 6
• This is the leading solution.
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
%% feval(@assignin,'caller','score',100);

2   Pass
%% tic urlwrite('http://rmatlabtest.appspot.com/testsuite_GeneSeq_contest.mat','testsuite_GeneSeq_contest.mat') toc

ans = /users/msssystem4/testsuite_GeneSeq_contest.mat Elapsed time is 0.800565 seconds.

3   Pass
%% load testsuite_GeneSeq_contest cases=size(testsuite,2); Result=zeros(cases,3); for i=1:27 % Practice runs segments=testsuite{i}; solution = geneseq(segments); end % i cases for i=1:29 %1:29 %cases segments=testsuite{i}; OriginalGene=one_answer{i}; t0 = cputime; solution = geneseq(segments); % 99.998065 51667.47 0.452 time_elapsed = cputime-t0; % Check = checksequence(segments,solution); Check=1; for ichk = 1:size(segments,1) if isempty(findstr(segments(ichk,:),solution)) Check=0; break end end if Check == 1 Result(i,1) = length(solution); Result(i,2) = time_elapsed; Result(i,3) = length(OriginalGene); else Result(i,:) = Inf; end end % i cases fprintf('Net Time=%10.6f\n',sum(Result(:,2))) fprintf('Result= %10.6f\n',100*sum(Result(:,1))/sum(Result(:,3))) v=1000*(sum(Result(:,1)./Result(:,3))/size(Result,1)-1)+ sum(Result(:,2))*10; fprintf('Final Score %.2f\n',v) fprintf('L %5i Time %7.3f L_orig %5i\n',Result') assert(max(Result(:,1))< Inf) feval( @assignin,'caller','score',floor(min( 100,v )) );

Net Time= 0.810000 Result= 99.994194 Final Score 6.25 L 65 Time 0.000 L_orig 65 L 65 Time 0.000 L_orig 65 L 65 Time 0.010 L_orig 65 L 100 Time 0.000 L_orig 100 L 100 Time 0.000 L_orig 100 L 100 Time 0.000 L_orig 100 L 65 Time 0.000 L_orig 65 L 65 Time 0.000 L_orig 65 L 65 Time 0.000 L_orig 65 L 100 Time 0.000 L_orig 100 L 100 Time 0.000 L_orig 100 L 100 Time 0.000 L_orig 100 L 100 Time 0.000 L_orig 100 L 100 Time 0.000 L_orig 100 L 100 Time 0.000 L_orig 100 L 67 Time 0.000 L_orig 67 L 96 Time 0.010 L_orig 97 L 37 Time 0.000 L_orig 37 L 37 Time 0.000 L_orig 37 L 67 Time 0.000 L_orig 67 L 97 Time 0.010 L_orig 97 L 400 Time 0.020 L_orig 400 L 199 Time 0.000 L_orig 200 L 100 Time 0.000 L_orig 100 L 10 Time 0.000 L_orig 10 L 25 Time 0.000 L_orig 26 L 5000 Time 0.100 L_orig 5000 L 20789 Time 0.270 L_orig 20789 L 23456 Time 0.390 L_orig 23456