3118: T5三色排序

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:3 解决:2

题目描述

给定 n 个整数 �1,�2,…,��a1,a2,,an,每个数字都是 0,1,20,1,2 中的一个,请将其中的一部分数字两两交换,使得结果是升序的,请问最少需要几次交换?

输入

第一行:单个整数表示 n
第二行:n 个整数表示 �1,�2,…,��a1,a2,,an


  • 对于 30%30% 的数据,1≤�≤5,0001n5,000
  • 对于 60%60% 的数据,1≤�≤100,0001n100,000
  • 对于 100%100% 的数据,1≤�≤1,000,0001n1,000,000
  • 0≤��≤20ai2




输出

单个整数:表示最少交换次数。

样例输入 复制

5
2 0 1 2 0

样例输出 复制

1

提示

将第一个2与最后一个0交换即可