题目信息

题目类型
练习
题目年份
2025
题目题型
编程题
关 键 词

题目题干

三值的排序

排序是一种很频繁的计算任务。现在考虑最多只有三值的排序问题。一个实际的例子是,当我们给某项竞赛的优胜者按金银铜牌序的时候。uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

在这个任务中可能的值只有三种1,2和3。我们用交换的方法把他排成升序的。uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

写一个程序计算出,给定的一个1,2,3组成的数字序列,排成升序所需的最少交换次数。uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入

Line 1: N (1 <= N <= 1000)uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

Lines 2-N+1: 每行一个数字,共N行。(1..3)uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输出

共一行,一个数字。表示排成升序所需的最少交换次数。uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

样例

输入

9
2
2
1
3
3
3
2
3
1

输出

4

提示

Sorting a Three-Valued Sequence IOI'96 - Day 2 Sorting is one of the most frequently performed computational tasks. Consider the special sorting problem in which the records to be sorted have at most three different key values. This happens for instance when we sort medalists of a competition according to medal value, that is, gold medalists come first, followed by silver, and bronze medalists come last.uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

In this task the possible key values are the integers 1, 2 and 3. The required sorting order is non-decreasing. However, sorting has to be accomplished by a sequence of exchange operations. An exchange operation, defined by two position numbers p and q, exchanges the elements in positions p and q.uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

You are given a sequence of key values. Write a program that computes the minimal number of exchange operations that are necessary to make the sequence sorted.uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

PROGRAM NAME: sort3 INPUT FORMAT Line 1: N (1 <= N <= 1000), the number of records to be sorted Lines 2-N+1: A single integer from the set {1, 2, 3}uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

SAMPLE INPUT (file sort3.in) 9 2 2 1 3 3 3 2 3 1uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

OUTPUT FORMAT A single line containing the number of exchanges required SAMPLE OUTPUT (file sort3.out) 4uh5100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

答案解析

相关题目

健康的好斯坦奶牛 农民JOHN以拥有世界上最健康的奶牛为骄傲。他知道每种饲料中所包含的的牛所需的最低的维他命量是多少。请你帮助农夫喂养他的牛,以保持他们的健康,使喂给牛的饲料的种数最少。 给出牛所需的
三值的排序 排序是一种很频繁的计算任务。现在考虑最多只有三值的排序问题。一个实际的例子是,当我们给某项竞赛的优胜者按金银铜牌序的时候。 在这个任务中可能的值只有三种1,2和3。我们用交换的方法把他排
跳棋的挑战 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行,每列,每条对角线(包括两条主对角线的所有对角线)上都至多有一个棋子。 列号 1 2 3 4 5 6 1 | |
数字金字塔 考虑在下面被显示的数字金字塔。 写一个程序来计算从最高点开始在底部任意处结束的路径经过数字的和的最大。 每一步可以走到左下方的点也可以到达右下方的点。 7 3 8 8 1 0 2 7
母亲的牛奶 农民约翰有三个容量分别是A,B,C升的桶,A,B,C分别是三个从1到20的整数,最初,A和B桶都是空的,而C桶是装满牛奶的。有时,约翰把牛奶从一个桶倒到另一个桶中,直到被灌桶装满或原桶空了
等差数列 一个等差数列是一个能表示成a, a+b, a+2b,..., a+nb (n=0,1,2,3,...) 在这个问题中a是一个非负的整数,b是正整数。 写一个程序来找出在双平方数集合S中长度为
修理牛棚 在一个暴风雨的夜晚,农民约翰的牛棚的屋顶、门被吹飞了。 好在许多牛正在度假,所以牛棚没有住满。 剩下的牛一个紧挨着另一个被排成一行来过夜。 有些牛棚里有牛,有些没有。 所有的牛棚有相同的宽度
混合牛奶 牛奶包装是一个如此低利润的生意,所以尽可能低的控制初级产品(牛奶)的价格变的十分重要。 请帮助快乐的牛奶制造者(Merry Milk Makers)以可能的最廉价的方式取得他们所需的牛奶。
双重回文数 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”。例如,12321就是一个回文数,而77778就不是。当然,回文数的首和尾都应是非零的,因此0220就不是回文数。 事实
回文平方数 回文数是指从左向右念和从右像做念都一样的数。如12321就是一个典型的回文数。 给定一个进制B(2<=B<=20十进制),输出所有的大于等于1小于等于300且它的平方用B进制

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢