当前位置:首页 > 慈溪市小学生计算机程序设计竞赛复赛试题定稿
2012年慈溪市小学生计算机程序设计比赛
复赛试题
比赛时间:2012年12月23日上午8:30—10:30
题目概览
中文题目名称 提交源程序文件名 提交可执行文件名 输入文件名 输出文件名 每个测试点时限 测试点数目 每个测试点分值 运行内存上限 统计成绩 score.pas score.exe score.in score.out 1秒 20 5 50M 最小的Y miny.pas miny.exe miny.in miny.out 1秒 20 5 50M 书架 bookshelf.pas bookshelf.exe bookshelf.in bookshelf.out 1秒 20 5 50M 偶数字符串 string.pas string.exe string.in string.out 1秒 20 5 50M 注意事项
1.每位选手都应先在E盘根目录下建立自己的答卷文件夹,该文件夹的名称为自己的考号; 2.选手最终所提交的所有文件都必须存放在自己的考生文件夹中,凡错放及以书面形式提交的答卷一律视作无效; 3.每题提交的解答都必须包括以下二个文件,即源程序文件和经编译后生成的可执行文件,其名称必须与各题中所规定的相一致;
4.程序中必须采用文件读写的方法来实现数据的输入和结果的输出,即程序运行时所需输
入数据应从题中指定的输入文件中读取(而不得采用键盘输入的方式),程序运行的结果应写入到题中指定的文件中(而不是输出到屏幕上)。
5.用于提供输入数据和记录输出结果的文件的名称都已在题中具体规定,选手程序在调用它们时不得为其指定任何特别的路径。 6.复赛用机房电脑C盘和D盘均已设置成开机还原保护,选手切勿把程序存放在C盘和D盘中,否则如果重新开机后程序将不复存在。 7.比赛结束后请不要关机。
1.统计成绩(score.pas/exe)
【问题描述】
每次考试或测试后,老师们都要进行成绩统计。假如某次期末考试有语文、数学、英语三门课,现请你编程输出总成绩最高分以及每门学科的最高分。 【输入数据】
输入文件score.in:输入从文件中读取,输入共n+1行。 第1行是一个正整数n(1≤n≤100),表示学生人数,从1到n编号。
接下来n行,每行3个整数,依次表示每个学生的语文、数学、英语成绩(每门课成绩是0到100之间的整数,包括0和100)。 【输出数据】
输出文件score.out:结果输出到文件中,输出共1行,包含4个整数,分别表示三门课总成绩最高分,语文学科的最高分,数学学科的最高分,英语学科的最高分。 【输入输出样例】 score.in 3 80 67 96 88 71 93 90 95 80 score.out 265 90 95 96 【样例解释】
输入3个学生成绩,第1个学生语文、数学、英语三门课的成绩分别为80,67,96,第2个学生语文、数学、英语三门课的成绩分别为88,71,93,第3个学生语文、数学、英语三门课的成绩分别为90,95,80。第3个学生的总成绩最高,为265。语文学科的最高分是90分,数学学科的最高分95,英语学科的最高分96。 【数据范围约定】
所有的输入数据保证1≤n≤100,成绩在0到100分之间(包括0和100)。
2.最小的Y(miny.pas/exe)
【问题描述】
程序设计与数学密切相关,所以兴趣小组的辅导老师经常拿一些有趣的数学题来让大家思考。一次课上,辅导老师又拿出了一个有趣的数学问题,题目是这样的:
给你两个正整数x和z,求最小的整数y,使得x×y以后再除以z的余数为0。 比如x=3,z=6,求最小的y。
题目一出,马上有同学说:最小的y是0。
老师说:是的,非常厉害,最小的y是0。那最小的正整数y是多少呢? 【输入数据】
输入文件miny.in:输入从文件中读取,输入共1行,两个正整数,分别表示x和z (1≤x≤2147483647, 1≤z≤2147483647)。 【输出数据】
输出文件miny.out:结果输出到文件中,输出共1行,表示使得x×y以后再除以z的余数为0的最小的正整数y。 【输入输出样例】 miny.in 3 6 miny.out 2 【样例解释】 3×2=6,再除以6余数为0,且2最小。 【数据范围约定】
对于50%的数据,1≤x, z≤100000。
对于100%的数据,1≤x, z≤2147483647。
3.书架(bookshelf.pas/exe)
【问题描述】
为了方便同学们查阅资料,程序设计兴趣小组的辅导老师打算将积攒了很多年的n本书放到上课教室的书架上去。
教室的书架是一层一层叠起来的,每一层最多可以放m本书。每一层的高度由放在这层中最高的那本书决定的,如果不放书,则认为这层的高度为0。为了使每个同学能方便地拿到想要的书,书架的总高度应尽可能低。请编程计算将这n本书放在书架上后书架的最小总高度,计算的过程中不考虑书的厚度与书架本身材料的厚度。 【输入数据】
输入文件bookshelf.in:输入从文件中读取,输入共n+1行。 第1行2个整数n和m (1≤m≤n≤100000) 。
接下来n行,每行1个正整数,分别表示每本书的高度(每本书的高度不超过100)。 【输出数据】
输出文件bookshelf.out:结果输出到文件中,输出共1行,表示将n本书放入书架后书架的最小总高度。 【输入输出样例】 bookshelf.in 3 2 20 bookshelf.out 40 10 30 【样例解释】 将高度是30和20的两本书放在一层,则这层的高度为30,将高度是10的那本书放在另外一层,则这层的高度为10,则书架的总高度为40,满足最小。 【数据范围约定】
每本书的高度为不超过100的正整数。 对于70%的数据,1≤m≤n≤1000。 对于100%的数据,1≤m≤n≤100000。
4.偶数字符串(string.pas/exe)
【问题描述】
对字符串的处理与操作是程序设计中永恒的主题之一,也是一项很重要的基本功。你对字符串熟悉吗?
给你n(1≤n≤20)个字符串(1≤字符串长度≤2000),所有的字符串中最多包含‘A’到‘N’这14种大写字母。从中选取若干个字符串,使得被选取的字符串中出现的每种字母总数均为偶数,请编程计算最多可以选取多少个字符串? 【输入数据】
输入文件string.in:输入从文件中读取,输入共n+1行。 第1行一个整数n,表示共有多少个字符串。
接下来n行,每行一个无序的字符串,字符串中最多包含‘A’到‘N’ 这14种大写字母(不考虑行末回车等不可见字符)。 【输出数据】
输出文件string.out:结果输出到文件中,输出共1行,表示最多可以选取的字符串数目。
【输入输出样例1】 string.in 2 A AD string.out 0 【样例1解释】 输入样例1中的2个字符串不管如何选择都不能保证每种字母加起来都是偶数。 【输入输出样例2】 string.in 3 AD AD AB string.out 2 【样例2解释】
选取输入中的两个“AD”字符串,使得A有2个,D也有2个,都是偶数。 【输入输出样例3】 string.in string.out
共分享92篇相关文档