Cody

# Problem 43219. Modified run-length companion vector

Solution 1004896

Submitted on 10 Oct 2016 by Maristela Dela Cruz
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 = [5 3 3 1 0 9 9 4 4 4 4 5 1 2 2]; r_correct = [1 1 2 1 1 1 2 1 2 3 4 2 2 1 2]; assert(isequal(run_length(x),r_correct)) 2

y = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 1 2 1 1 1 2 1 1 1 1 1 1 1 1 y = 1 1 2 1 1 1 2 1 1 1 1 1 1 1 1 y = 1 1 2 1 1 1 2 1 2 1 1 1 1 1 1 y = 1 1 2 1 1 1 2 1 2 3 1 1 1 1 1 y = 1 1 2 1 1 1 2 1 2 3 4 1 1 1 1 y = 1 1 2 1 1 1 2 1 2 3 4 2 1 1 1 y = 1 1 2 1 1 1 2 1 2 3 4 2 2 1 1 y = 1 1 2 1 1 1 2 1 2 3 4 2 2 1 1 y = 1 1 2 1 1 1 2 1 2 3 4 2 2 1 2 ans = 2

2   Pass
x = ones(1,20); r_correct = 1:20; assert(isequal(run_length(x),r_correct)) 3

y = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 1 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 1 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 1 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 1 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 1 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 1 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 y = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ans = 3

3   Pass
x = [1 1 1 2 2 3 4 4 5 5 5]; r_correct = [1 2 3 1 2 1 1 2 1 2 3]; assert(isequal(run_length(x),r_correct)) 4

y = 1 1 1 1 1 1 1 1 1 1 1 y = 1 2 1 1 1 1 1 1 1 1 1 y = 1 2 3 1 1 1 1 1 1 1 1 y = 1 2 3 1 1 1 1 1 1 1 1 y = 1 2 3 1 2 1 1 1 1 1 1 y = 1 2 3 1 2 1 1 1 1 1 1 y = 1 2 3 1 2 1 1 1 1 1 1 y = 1 2 3 1 2 1 1 2 1 1 1 y = 1 2 3 1 2 1 1 2 1 1 1 y = 1 2 3 1 2 1 1 2 1 2 1 y = 1 2 3 1 2 1 1 2 1 2 3 ans = 4

4   Pass
x = 1:40; r_correct = ones(size(x)); assert(isequal(run_length(x),r_correct)) 5

y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 40 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

5   Pass
x = [-34 -17*ones(1,100)]; r_correct = [1 1:100]; assert(isequal(run_length(x),r_correct))

y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 7 8 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 7 8 9 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 7 8 9 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 7 8 9 10 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 7 8 9 10 11 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 1 1 1 1 1 1 1 1 1 1 1 1 1 y = Columns 1 through 29 1 1 2 3 4 5 6 7 8 9 10 11 12 13 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 30 through 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 59 through 87 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 88 through 101 1 ...