#3339. Eating Together
Eating Together
说明
FJ 的奶牛们在吃晚饭时很傻。他们把自己组织成三组(方便编号为 1,2 和 3),坚持一起用餐。
当他们在谷仓排队进入喂食区时,麻烦就开始了。 每头奶牛都随身带着一张小卡片,小卡片上刻的是 Di(1≤Di≤3) 表示她属于哪一组。所有的 N(1≤N≤30000) 头奶牛排队吃饭,但他们并不能按卡片上的分组站好。
FJ 的工作并不是那么难。他只是沿着牛的路线走下去,把旧的号码标出来,换上一个新的。通过这样做,他创造了一群奶牛,比如 111222333 或 333222111,奶牛的就餐组按他们的晚餐卡片按升序或降序排列。 FJ 就像任何人一样懒惰。
他很好奇:怎样他才能进行适当的分组,使得他只要修改最少次数的数字?由于奶牛们已经很长时间没有吃到饭了,所以“哞哞”的声音到处都是,FJ 只好更换卡号,而不能重新排列已经排好队的奶牛。
输入格式
第 1 行:一个整数: n
第 2∼n+1 行:第 i+1 行描述第 i 个奶牛目前分组。
输出格式
一个整数,表示必须做出的最小变化数,以便以升序或降序排序最终序列。样例
5
1
3
2
1
1
1