Cody

# 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

56.1% Correct | 43.9% Incorrect
Last solution submitted on Aug 26, 2015

Tags

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Apply Today