2012PASCAL小学试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十届绍兴市少儿信息学竞赛
复赛试题
(2012年5月26日下午1:30-4:00)
一、题目一览
中文题目名称号码分类排队线段覆盖汉诺塔
英文题目名称number queue cover hanoi
输入文件名number.in queue.in cover.in hanoi.in
输出文件名number.out queue.out cover.out hanoi.out
每个测试点时限1秒1秒1秒1秒
测试点数目10101010
每个测试点分值10101010
二、比赛目录结构示例
选手比赛时,需在本机为每题建立对应的题目目录,目录名称与题目英文名称相同。选手根据题目要求,将自己提交的源程序,放在该题的题目目录下。
每位选手把自己提交的源程序连同要求的目录结构,存入D盘根目录中。(只递交源程序,测试时以源程序为准)
例如:假设试卷中有cashier、dune、manhattan三题,选手sx1001使用Pascal 答题,其最终提交的文件为cashier.pas、dune.pas、manhattan.pas,则该选手提交的目录结构如下所示:
|---sx1001/
|---cashier/
|---cashier.pas
|---dune/
|---dune.pas
|---manhattan/
|---manhattan.pas
三、特别提醒
1、务必看清题目,严格按照所要求的格式输入、输出。
2、比赛开始前应先检查本机能否正常使用,如有问题可向监考老师提出。比赛结束后应及时离开机房,但注意不要关机。
第一题号码分类
number.pas
问题描述:
小明有来自A、B、C三城市的n个朋友,现在要将他们的电话号码按A、B、C的顺序分类输出,但相同地区的号码则仍按原序输出。已知各城市电话号码的第一位是不同的:A城为8,B城为5,C城为2。
输入文件:
输入文件number.in,共二行。第一行有一个正整数n(n<=100),表示朋友的数目。第二行是n个八位电话号码(号码间以空格相隔)。
输出文件:
输出文件number.out,共三行。格式如下:
A:A城朋友的电话号码(以空格相隔,如没有A城的,则空着)
B:B城朋友的电话号码(以空格相隔,如没有B城的,则空着)
C:C城朋友的电话号码(以空格相隔,如没有C城的,则空着)
样例:
输入:
3
855520882282655882222205
输出:
A:8555208882222205
B:
C:22826558
第二题排队
queue.pas
问题描述:
程程是一个喜欢跳舞的女孩,还报了一个专门学习跳舞的班呢。
在入学的时候,老师让大家根据自己的身高排了一下队,个子小的同学排前面,个子高的同学排在后面,高度相等的先后顺序随意.。
如果给你这些同学的身高数据,你能计算一下程程最前可以排第几、最后可以排第几吗?
输入文件:
输入文件queue.in,共三行。
第一行是一个整数n(1<=n<=30),表示跳舞班所有同学的人数。
第二行是n个整数,表示所有同学的身高,以厘米为单位。这n个同学的数据,包括程程本人的。
第三行是一个整数,表示程程的身高。
输出文件:
输出文件queue.out,文件中只有两个整数,用空格分开。分别表示:从前面数,程程可能排的最前的位置和最后的位置。
样例:
输入:
8
133134132133131130138133
133
输出:
46
第三题线段覆盖
cover.pas
问题描述:
如果一个点在一条线段上(包括这个点是线段端点的情况),我们说“这条线段覆盖了这个点”。
现有n个在一条水平直线上排列的点,请你编写程序计算一下:如果用3条线段覆盖所有的点,这3条线段的长度之和最小是多少?
注意:既然说是3条,当然就不允许某两条是首尾相接的,否则就是2条了,而且,任何线段的长度都要大于0。
输入文件:
输入文件cover.in,第一行为整数n(100
-
n个
≤n),表示点的数量。第二行有1
6≤
整数,表示其它各点到最左端的点的距离,单位是厘米。已知这些整数都不会超过40000。
输出文件:
输出文件cover.out,文件中只有一个整数,表示用3条线段覆盖所有点时,它们长度之和的最小值,单位是厘米。
输入输出样列
输入:
6
14101517
输出:
9
第四题汉诺塔
hanoi.pas
问题描述:
汉诺塔(又称河内塔)问题是源于印度的一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天
命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一
根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱
子之间一次只能移动一个圆盘。
现在如果告诉你金片的数目n,并按以上要求移动金片
并完成任务,你能计算出需要移动金片多少次吗?
输入文件:
输入文件hanoi.in,只有一行,有一个整数n,表示金片的数目。(2<=n<=64)
输出文件:
输出文件hanoi.out,只有一行,有一个整数,表示完成任务时移动金片的总次数。
样例:
输入:
5
输出:
31