# Problem 1506. Maximum Intra-Vector Swaps

This Challenge, based upon a contest in which Rokicki came in 2nd, is to find sequences containing 1:N that require maximum iterations prior to the value 1 appearing in the first position.

The processing rule is that positions 1 thru Vector(1) are swapped. Processing stops when Vector(1) is 1.

Example Sequences:

```[3 1 2], [2 1 3], [1 2 3] Score 2
[3 1 4 5 2][4 1 3 5 2][5 3 1 4 2][2 4 1 3 5][4 2 1 3 5][3 1 2 4 5][2 1 3 4 5][1 2 3 4 5]
```

Input: n (Integer from 1 to 31) (16 Actual Cases 2:11 13 17 19 23 29 31)

Output: Vector of values 1:n

Example:

Input: 5 Output: [3 1 4 5 2]

Score: 7

A minimum cumulative score of 531 for the 17 cases is required to Pass.

Final Score = 2531 - sum(scores)

Hints:

Usage of perms for 10 or higher may cause Cody Memory/Time issues. Random subsets are suggested for n>9.

Request: If Code is implemented external then please post as a block comment.

Faster Code Block than fliplr:

```function count=process_seq(seq)
count=0;
while seq(1)>1
count=count+1;
seq(1:seq(1))=seq(seq(1):-1:1);
end
end
```

### Solution Stats

57.14% Correct | 42.86% Incorrect
Last Solution submitted on Jul 16, 2019

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!