问题描述
一次交换操作是指将数列中的两个数位置对调。给出一个只有1、2、3三个元素的数列,你需要通过有限次交换使数列中的数从小到大排列。请求出最少需要的交换次数。
输入格式
第一行读入一个数N,它代表数列的长度。
以下N行每行一个数。每个数都只可能是1、2、3中的一个。
输出格式
最少的交换次数。
样例输入
9
2
2
1
3
3
3
2
3
1
样例输出
4
时间限制
各测试点1秒
内存限制
你的程序将被分配128MB的运行空间
数据规模
对于50%的数据,N<=100;
对于100%的数据,N<=100000。