三元排序

三元排序

暂无测试数据。

Description

一次交换操作是指将数列中的两个数位置对调。给出一个只有1、2、3三个元素的数列,你需要通过有限次交换使数列中的数从小到大排列。请求出最少需要的交换次数。

Format

Input

输入数据保存在sort3.in中。
第一行读入一个数N,它代表数列的长度。
以下N行每行一个数。每个数都只可能是1、2、3中的一个。

Output

将最少的交换次数输出到文件sort3.out中。

Sample 1

Input

9
2
2
1
3
3
3
2
3
1

Output

4

Limitation

1s, 10MiB for each test case.