Cody

# Problem 660. Find a subset that divides the vector into equal halves

Solution 514669

Submitted on 20 Oct 2014
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
%% x = [1 2 3 4 5 6 7]; xi = split_it(x); assert(isequal(sum(x(xi)),sum(x)/2));

sol = 1 6 7 1 7 6 2 5 7 2 7 5 3 4 7 3 5 6 3 6 5 3 7 4 4 3 7 4 7 3 5 2 7 5 3 6 5 6 3 5 7 2 6 1 7 6 3 5 6 5 3 6 7 1 7 1 6 7 2 5 7 3 4 7 4 3 7 5 2 7 6 1 a = 1 6 7

2   Pass
%% x = [2 2 2 2 2 2]; xi = split_it(x); assert(isequal(sum(x(xi)),sum(x)/2));

sol = 1 2 3 1 2 4 1 2 5 1 2 6 1 3 2 1 3 4 1 3 5 1 3 6 1 4 2 1 4 3 1 4 5 1 4 6 1 5 2 1 5 3 1 5 4 1 5 6 1 6 2 1 6 3 1 6 4 1 6 5 2 1 3 2 1 4 2 1 5 2 1 6 2 3 1 2 3 4 2 3 5 2 3 6 2 4 1 2 4 3 2 4 5 2 4 6 2 5 1 2 5 3 2 5 4 2 5 6 2 6 1 2 6 3 2 6 4 2 6 5 3 1 2 3 1 4 3 1 5 3 1 6 3 2 1 3 2 4 3 2 5 3 2 6 3 4 1 3 4 2 3 4 5 3 4 6 3 5 1 3 5 2 3 5 4 3 5 6 3 6 1 3 6 2 3 6 4 3 6 5 4 1 2 4 1 3 4 1 5 4 1 6 4 2 1 4 2 3 4 2 5 4 2 6 4 3 1 4 3 2 4 3 5 4 3 6 4 5 1 4 5 2 4 5 3 4 5 6 4 6 1 4 6 2 4 6 3 4 6 5 5 1 2 5 1 3 5 1 4 5 1 6 5 2 1 5 2 3 5 2 4 5 2 6 5 3 1 5 3 2 5 3 4 5 3 6 5 4 1 5 4 2 5 4 3 5 4 6 5 6 1 5 6 2 5 6 3 5 6 4 6 1 2 6 1 3 6 1 4 6 1 5 6 2 1 6 2 3 6 2 4 6 2 5 6 3 1 6 3 2 6 3 4 6 3 5 6 4 1 6 4 2 6 4 3 6 4 5 6 5 1 6 5 2 6 5 3 6 5 4 a = 1 2 3

3   Pass
%% x = [2 5 4 5 4]; xi = split_it(x); assert(isequal(sum(x(xi)),sum(x)/2));

sol = 2 4 4 2 a = 2 4

4   Pass
%% x = [1 3 1 1 9 7]; xi = split_it(x); assert(isequal(sum(x(xi)),sum(x)/2));

sol = 1 2 6 1 3 5 1 4 5 1 5 3 1 5 4 1 6 2 2 1 6 2 3 6 2 4 6 2 6 1 2 6 3 2 6 4 3 1 5 3 2 6 3 4 5 3 5 1 3 5 4 3 6 2 4 1 5 4 2 6 4 3 5 4 5 1 4 5 3 4 6 2 5 1 3 5 1 4 5 3 1 5 3 4 5 4 1 5 4 3 6 1 2 6 2 1 6 2 3 6 2 4 6 3 2 6 4 2 a = 1 2 6

5   Fail
%% x = primes(100); xi = split_it(x); assert(isequal(sum(x(xi)),sum(x)/2));

Error: Maximum variable size allowed by the program is exceeded.