Cody

# Problem 722. Make a run-length companion vector

Solution 256675

Submitted on 6 Jun 2013 by Erin
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 1 1 1 2]; assert(isequal(run_length(x),r_correct))

``` r = 1 1 r = 1 1 2 r = 1 1 2 1 r = 1 1 2 1 1 r = 1 1 2 1 1 1 r = 1 1 2 1 1 1 2 r = 1 1 2 1 1 1 2 1 r = 1 1 2 1 1 1 2 1 2 r = 1 1 2 1 1 1 2 1 2 3 r = 1 1 2 1 1 1 2 1 2 3 4 r = 1 1 2 1 1 1 2 1 2 3 4 1 r = 1 1 2 1 1 1 2 1 2 3 4 1 1 r = 1 1 2 1 1 1 2 1 2 3 4 1 1 1 r = 1 1 2 1 1 1 2 1 2 3 4 1 1 1 2 ```

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

``` r = 1 2 r = 1 2 3 r = 1 2 3 4 r = 1 2 3 4 5 r = 1 2 3 4 5 6 r = 1 2 3 4 5 6 7 r = 1 2 3 4 5 6 7 8 r = 1 2 3 4 5 6 7 8 9 r = 1 2 3 4 5 6 7 8 9 10 r = 1 2 3 4 5 6 7 8 9 10 11 r = 1 2 3 4 5 6 7 8 9 10 11 12 r = 1 2 3 4 5 6 7 8 9 10 11 12 13 r = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 r = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 r = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 r = Columns 1 through 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Column 17 17 r = Columns 1 through 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Columns 17 through 18 17 18 r = Columns 1 through 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Columns 17 through 19 17 18 19 r = Columns 1 through 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Columns 17 through 20 17 18 19 20 ```

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))

``` r = 1 2 r = 1 2 3 r = 1 2 3 1 r = 1 2 3 1 2 r = 1 2 3 1 2 1 r = 1 2 3 1 2 1 1 r = 1 2 3 1 2 1 1 2 r = 1 2 3 1 2 1 1 2 1 r = 1 2 3 1 2 1 1 2 1 2 r = 1 2 3 1 2 1 1 2 1 2 3 ```

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

``` r = 1 1 r = 1 1 1 r = 1 1 1 1 r = 1 1 1 1 1 r = 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 r = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Column 17 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 18 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 19 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 20 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 21 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 22 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 23 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 24 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 25 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 26 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 27 1 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 28 1 1 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 29 1 1 1 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 30 1 1 1 1 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 31 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Column 33 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 33 through 34 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 33 through 35 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 33 through 36 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 33 through 37 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 33 through 38 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 33 through 39 1 1 1 1 1 1 1 r = Columns 1 through 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 17 through 32 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Columns 33 through 40 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))

``` r = 1 1 r = 1 1 2 r = 1 1 2 3 r = 1 1 2 3 4 r = 1 1 2 3 4 5 r = 1 1 2 3 4 5 6 r = 1 1 2 3 4 5 6 7 r = 1 1 2 3 4 5 6 7 8 r = 1 1 2 3 4 5 6 7 8 9 r = 1 1 2 3 4 5 6 7 8 9 10 r = 1 1 2 3 4 5 6 7 8 9 10 11 r = 1 1 2 3 4 5 6 7 8 9 10 11 12 r = 1 1 2 3 4 5 6 7 8 9 10 11 12 13 r = 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 r = 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Column 17 16 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 18 16 17 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 19 16 17 18 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 20 16 17 18 19 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 21 16 17 18 19 20 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 22 16 17 18 19 20 21 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 23 16 17 18 19 20 21 22 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 24 16 17 18 19 20 21 22 23 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 25 16 17 18 19 20 21 22 23 24 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 26 16 17 18 19 20 21 22 23 24 25 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 27 16 17 18 19 20 21 22 23 24 25 26 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 28 16 17 18 19 20 21 22 23 24 25 26 27 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 29 16 17 18 19 20 21 22 23 24 25 26 27 28 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 30 16 17 18 19 20 21 22 23 24 25 26 27 28 29 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 31 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Column 33 32 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 34 32 33 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 35 32 33 34 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 36 32 33 34 35 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 37 32 33 34 35 36 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 38 32 33 34 35 36 37 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 39 32 33 34 35 36 37 38 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 40 32 33 34 35 36 37 38 39 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 41 32 33 34 35 36 37 38 39 40 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 42 32 33 34 35 36 37 38 39 40 41 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 43 32 33 34 35 36 37 38 39 40 41 42 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 44 32 33 34 35 36 37 38 39 40 41 42 43 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 45 32 33 34 35 36 37 38 39 40 41 42 43 44 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 46 32 33 34 35 36 37 38 39 40 41 42 43 44 45 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 47 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 48 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 48 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 Column 49 48 r = Columns 1 through 16 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Columns 17 through 32 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Columns 33 through 48 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 Columns 49 through 50 48 49 r = Columns ...```