【思维】[IOI 1996 / USACO2.1] 三值的排序 Sorting a Three-Valued Sequence
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
P1459 [IOI 1996 / USACO2.1] 三值的排序 Sorting a Three-Valued Sequence
题目描述
排序是一种很频繁的计算任务。现在考虑最多只有三值的排序问题。一个实际的例子是,当我们给某项竞赛的优胜者按金银铜牌排序的时候。在这个任务中可能的值只有三种 。我们用交换的方法把他排成升序的。
写一个程序计算出,给定的一个 组成的数字序列,排成升序所需的最少交换次数。
输入格式
第一行一个正整数 ,表示奖牌个数。
接下来 行,每行一个 内的整数,表示奖牌。
输出格式
输出一行一个整数,表示排成升序所需的最少交换次数。
输入输出样例 #1
输入 #1
9
2
2
1
3
3
3
2
3
1
输出 #1
4
说明/提示
【样例解释 #1】
一种可能的交换方案如下:
2 2 1 3 3 3 2 3 1 -> 1 2 2 3 3 3 2 3 1
^ ^
1 2 2 3 3 3 2 3 1 -> 1 2 2 1 3 3 2 3 3
^ ^
1 2 2 1 3 3 2 3 3 -> 1 1 2 2 3 3 2 3 3
^ ^
1 1 2 2 3 3 2 3 3 -> 1 1 2 2 2 3 3 3 3
^ ^
【数据范围】
对于 的数据,。
翻译来自 NOCOW。