atcoder#ABC302G. [ABC302G] Sort from 1 to 4

[ABC302G] Sort from 1 to 4

Score : 625625 points

Problem Statement

You are given a sequence A=(A1,A2,,AN)A=(A_1,A_2,\ldots,A_N) of length NN, consisting of integers between 11 and 44.

Takahashi may perform the following operation any number of times (possibly zero):

  • choose a pair of integer (i,j)(i,j) such that 1i,andswap1\leq i, and swap A_iand and A_j$.

Find the minimum number of operations required to make AA non-decreasing. A sequence is said to be non-decreasing if and only if AiAi+1A_i\leq A_{i+1} for all 1iN11\leq i\leq N-1.

Constraints

  • 2N2×1052 \leq N \leq 2\times 10^5
  • 1Ai41\leq A_i \leq 4
  • All values in the input are integers.

Input

The input is given from Standard Input in the following format:

NN

A1A_1 A2A_2 \ldots ANA_N

Output

Print the minimum number of operations required to make AA non-decreasing in a single line.

6
3 4 1 1 2 4
3

One can make AA non-decreasing with the following three operations:

  • Choose (i,j)=(2,3)(i,j)=(2,3) to swap A2A_2 and A3A_3, making A=(3,1,4,1,2,4)A=(3,1,4,1,2,4).
  • Choose (i,j)=(1,4)(i,j)=(1,4) to swap A1A_1 and A4A_4, making A=(1,1,4,3,2,4)A=(1,1,4,3,2,4).
  • Choose (i,j)=(3,5)(i,j)=(3,5) to swap A3A_3 and A5A_5, making A=(1,1,2,3,4,4)A=(1,1,2,3,4,4).

This is the minimum number of operations because it is impossible to make AA non-decreasing with two or fewer operations. Thus, 33 should be printed.

4
2 3 4 1
3