Cody

# Problem 3108. Don't Try, give up and return NaN.

Solution 653968

Submitted on 16 Apr 2015 by Zikobrelli
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:5; N = [-1 2 6]; values = [NaN 2 NaN]; assert(isequaln(giveup(A,N),values))

B = NaN 0 0 B = NaN 2 0 B = NaN 2 NaN

2   Pass
%% A = 10:-2:2; N = 5:-1:1; y_correct = 2:2:10; assert(isequaln(giveup(A,N),y_correct))

B = 2 0 0 0 0 B = 2 4 0 0 0 B = 2 4 6 0 0 B = 2 4 6 8 0 B = 2 4 6 8 10

3   Pass
%% A = [1 2 3 4 10]; N = 5; y_correct = 10; assert(isequaln(giveup(A,N),y_correct))

B = 10

4   Pass
%% A = 10:-2:2; N = -1; y_correct = NaN; assert(isequaln(giveup(A,N),y_correct))

B = NaN

5   Pass
%% A = [4 5 6]; N = [6 2]; y_correct = [NaN 5]; assert(isequaln(giveup(A,N),y_correct))

B = NaN 0 B = NaN 5

6   Pass
%% A = 4:randi([20 30]) ; N = randi(length(A)+20,1,10); K = N+3 ; K(K>max(A)) = NaN; y_correct = K; assert(isequaln(giveup(A,N),y_correct))

B = 14 0 0 0 0 0 0 0 0 0 B = 14 17 0 0 0 0 0 0 0 0 B = 14 17 10 0 0 0 0 0 0 0 B = 14 17 10 NaN 0 0 0 0 0 0 B = 14 17 10 NaN 11 0 0 0 0 0 B = 14 17 10 NaN 11 16 0 0 0 0 B = 14 17 10 NaN 11 16 14 0 0 0 B = 14 17 10 NaN 11 16 14 19 0 0 B = 14 17 10 NaN 11 16 14 19 8 0 B = 14 17 10 NaN 11 16 14 19 8 NaN

7   Pass
%% A = [-23 4 56 0 44 11]; N = [7:-1.5:-2]; y_correct = [NaN NaN 0 NaN -23 NaN NaN]; assert(isequaln(giveup(A,N),y_correct))

B = NaN 0 0 0 0 0 0 B = NaN NaN 0 0 0 0 0 B = NaN NaN 0 0 0 0 0 B = NaN NaN 0 NaN 0 0 0 B = NaN NaN 0 NaN -23 0 0 B = NaN NaN 0 NaN -23 NaN 0 B = NaN NaN 0 NaN -23 NaN NaN

8   Pass
%% A = magic(3); N = magic(4); y_correct = [ NaN 3 4 NaN 5 NaN NaN 7 2 6 9 NaN 1 NaN NaN 8]; assert(isequaln(giveup(A,N),y_correct))

B = NaN 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 B = NaN 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 B = NaN 0 0 0 5 0 0 0 2 0 0 0 0 0 0 0 B = NaN 0 0 0 5 0 0 0 2 0 0 0 1 0 0 0 B = NaN 3 0 0 5 0 0 0 2 0 0 0 1 0 0 0 B = NaN 3 0 0 5 NaN 0 0 2 0 0 0 1 0 0 0 B = NaN 3 0 0 5 NaN 0 0 2 6 0 0 1 0 0 0 B = NaN 3 0 0 5 NaN 0 0 2 6 0 0 1 NaN 0 0 B = NaN 3 4 0 5 NaN 0 0 2 6 0 0 1 NaN 0 0 B = NaN 3 4 0 5 NaN NaN 0 2 6 0 0 1 NaN 0 0 B = NaN 3 4 0 5 NaN NaN 0 2 6 9 0 1 NaN 0 0 B = NaN 3 4 0 5 NaN NaN 0 2 6 9 0 1 NaN NaN 0 B = NaN 3 4 NaN 5 NaN NaN 0 2 6 9 0 1 NaN NaN 0 B = NaN 3 4 NaN 5 NaN NaN 7 2 6 9 0 1 NaN NaN 0 B = NaN 3 4 NaN 5 NaN NaN 7 2 6 9 NaN 1 NaN NaN 0 B = NaN 3 4 NaN 5 NaN NaN 7 2 6 9 NaN 1 NaN NaN 8

9   Pass
%% A = magic(3); N = magic(4)-1; y_correct = [ NaN 8 3 NaN 1 NaN 2 6 7 9 5 NaN 4 NaN NaN NaN]; assert(isequaln(giveup(A,N),y_correct))

B = NaN 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 B = NaN 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 B = NaN 0 0 0 1 0 0 0 7 0 0 0 0 0 0 0 B = NaN 0 0 0 1 0 0 0 7 0 0 0 4 0 0 0 B = NaN 8 0 0 1 0 0 0 7 0 0 0 4 0 0 0 B = NaN 8 0 0 1 NaN 0 0 7 0 0 0 4 0 0 0 B = NaN 8 0 0 1 NaN 0 0 7 9 0 0 4 0 0 0 B = NaN 8 0 0 1 NaN 0 0 7 9 0 0 4 NaN 0 0 B = NaN 8 3 0 1 NaN 0 0 7 9 0 0 4 NaN 0 0 B = NaN 8 3 0 1 NaN 2 0 7 9 0 0 4 NaN 0 0 B = NaN 8 3 0 1 NaN 2 0 7 9 5 0 4 NaN 0 0 B = NaN 8 3 0 1 NaN 2 0 7 9 5 0 4 NaN NaN 0 B = NaN 8 3 NaN 1 NaN 2 0 7 9 5 0 4 NaN NaN 0 B = NaN 8 3 NaN 1 NaN 2 6 7 9 5 0 4 NaN NaN 0 B = NaN 8 3 NaN 1 NaN 2 6 7 9 5 NaN 4 NaN NaN 0 B = NaN 8 3 NaN 1 NaN 2 6 7 9 5 NaN 4 NaN NaN NaN

10   Pass
%% A = magic(4); N = magic(3)-1; y_correct = [ 7 NaN 2 5 4 11 9 14 16]; assert(isequaln(giveup(A,N),y_correct))

B = 7 0 0 0 0 0 0 0 0 B = 7 0 0 5 0 0 0 0 0 B = 7 0 0 5 0 0 9 0 0 B = 7 NaN 0 5 0 0 9 0 0 B = 7 NaN 0 5 4 0 9 0 0 B = 7 NaN 0 5 4 0 9 14 0 B = 7 NaN 2 5 4 0 9 14 0 B = 7 NaN 2 5 4 11 9 14 0 B = 7 NaN 2 5 4 11 9 14 16