浙江大学PAT(BasicLevel)Practise(中文)26-35题

上传人:tia****nde 文档编号:36876884 上传时间:2018-04-03 格式:DOC 页数:9 大小:25.50KB
返回 下载 相关 举报
浙江大学PAT(BasicLevel)Practise(中文)26-35题_第1页
第1页 / 共9页
浙江大学PAT(BasicLevel)Practise(中文)26-35题_第2页
第2页 / 共9页
浙江大学PAT(BasicLevel)Practise(中文)26-35题_第3页
第3页 / 共9页
浙江大学PAT(BasicLevel)Practise(中文)26-35题_第4页
第4页 / 共9页
浙江大学PAT(BasicLevel)Practise(中文)26-35题_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《浙江大学PAT(BasicLevel)Practise(中文)26-35题》由会员分享,可在线阅读,更多相关《浙江大学PAT(BasicLevel)Practise(中文)26-35题(9页珍藏版)》请在金锄头文库上搜索。

1、PAT (Basic Level) Practise (中文)26-35 题1026. 程序运行时间(15) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock()被调用时所耗费的时间。这个时间单位是 clock tick,即“时钟打点”。同时还有一个常数 CLK_TCK,给出了机器时钟每秒所走的时钟打点 数。于是为了获得一个函数 f 的运行时间,我们只要在调用 f 之

2、前先调用 clock(),获得一 个时钟打点数 C1;在 f 执行完成后再调用 clock(),获得另一个时钟打点数 C2;两次获得 的时钟打点数之差(C2-C1)就是 f 运行所消耗的时钟打点数,再除以常数 CLK_TCK,就得 到了以秒为单位的运行时间。 这里不妨简单假设常数 CLK_TCK 为 100。现给定被测函数前后两次获得的时钟打点数, 请你给出被测函数运行的时间。 输入格式: 输入在一行中顺序给出 2 个整数 C1 和 C1。注意两次获得的时钟打点数肯定不相同,即 C1 C2,并且取值在0, 107。 输出格式: 在一行中输出被测函数运行的时间。运行时间必须按照“hh:mm:ss

3、”(即 2 位的“时:分:秒”) 格式输出;不足 1 秒的时间四舍五入到秒。 输入样例: 123 4577973 输出样例: 12:42:591027. 打印沙漏(20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定 17 个“*”,要求按下列格 式打印 * * 所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差 2; 符号数先从大到小顺序递减到 1,再从小到大顺序递增;首尾符号数相等。 给定任意 N 个符号,不一定能正好组成

4、一个沙漏。要求打印出的沙漏能用掉尽可能多的符 号。 输入格式: 输入在一行给出 1 个正整数 N(=1000)和一个符号,中间以空格分隔。 输出格式: 首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。 输入样例: 19 * 输出样例: * * 21028. 人口普查(20)时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 某城镇进行人口普查,得到了全体居民的生日。现请你写个程序,找出镇上最年长和最年 轻的人。这里确保每个输入的日期都是合法的,但不一定是合理的假设已知镇上没有超过 2

5、00 岁的老人,而今天是 2014 年 9 月 6 日,所以超过 200 岁的生日和未出生的生日都是不合理 的,应该被过滤掉。输入格式:输入在第一行给出正整数 N,取值在(0, 105;随后 N 行,每行给出 1 个人的姓名(由不超 过 5 个英文字母组成的字符串)、以及按“yyyy/mm/dd”(即年/月/日)格式给出的生日。 题目保证最年长和最年轻的人没有并列。输出格式:在一行中顺序输出有效生日的个数、最年长人和最年轻人的姓名,其间以空格分隔。输入样例: 5 John 2001/05/12 Tom 1814/09/06 Ann 2121/01/30 James 1814/09/05 Ste

6、ve 1967/11/20 输出样例: 3 Tom John1029. 旧键盘(20)时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该 输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入格式:输入在 2 行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过 80 个 字符的串,由字母 A-Z(包括大、小写)、数字 0-9、以及下划线“_”(代表空格)组成。 题目保证 2 个字符串均非空。输出格式:按照

7、发现顺序,在一行中输出坏掉的键。其中英文字母只输出大写,每个坏键只输出一次。题目保证至少有 1 个坏键。输入样例: 7_This_is_a_test _hs_s_a_es 输出样例: 7TI1030. 完美数列(25)时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CAO, Peng 给定一个正整数数列,和正整数 p,设这个数列中的最大值是 M,最小值是 m,如果 M = m * p,则称这个数列是完美数列。现在给定参数 p 和一些正整数,请你从中选择尽可能多的数构成一个完美数列。输入格式:输入第一行给出两个正整数 N 和 p,

8、其中 N(= 105)是输入的正整数的个数,p(= 109)是给定的参数。第二行给出 N 个正整数,每个数不超过 109。输出格式:在一行中输出最多可以选择多少个数可以用它们组成一个完美数列。输入样例: 10 8 2 3 20 4 5 1 6 7 8 9 输出样例: 81031. 查验身份证(15)时间限制 200 ms内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 一个合法的身份证号码由 17 位地区、日期编号和顺序编号加 1 位校验码组成。校验码的计 算规则如下:首先对前 17 位数字加权求和,权重分配为: 7,9,10,5,8

9、,4,2,1,6,3,7,9,10,5,8,4,2;然后将计算的和对 11 取模 得到值 Z;最后按照以下关系对应 Z 值与校验码 M 的值:Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2现在给定一些身份证号码,请你验证校验码的有效性,并输出有问题的号码。输入格式:输入第一行给出正整数 N(= 100)是输入的身份证号码的个数。随后 N 行,每行给出 1 个 18 位身份证号码。输出格式:按照输入的顺序每行输出 1 个有问题的身份证号码。这里并不检验前 17 位是否合理,只检 查前 17 位是否全为数字且最后 1 位校验码计算准确。如果所有号码

10、都正常,则输出“All passed”。输入样例 1: 4 320124198808240056 12010X198901011234 110108196711301866 37070419881216001X 输出样例 1: 12010X198901011234 110108196711301866 37070419881216001X 输入样例 2: 2 320124198808240056110108196711301862 输出样例 2: All passed1032. 挖掘机技术哪家强(20)时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 S

11、tandard 作者 CHEN, Yue 为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比 赛结果统计出技术最强的那个学校。输入格式:输入在第 1 行给出不超过 105 的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者 的信息和成绩,包括其所代表的学校的编号(从 1 开始连续编号)、及其比赛成绩(百分 制),中间以空格分隔。输出格式:在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一, 没有并列。输入样例: 6 3 65 2 80 1 100 2 70 3 40 3 0 输出样例: 2 1501033. 旧键盘打字(20)

12、时间限制200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该 输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在 2 行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以 大写给出;每段文字是不超过 105 个字符的串。可用的字符包括字母a-z, A-Z、数字 0- 9、以及下划线“_”(代表空格)、“,”、“.”、“-”、“+”(代表上档键)。题目保证第 2 行输 入的文字串非空。注意:如果上档键坏掉了

13、,那么大写的英文字母无法被打出。输出格式:在一行中输出能够被打出的结果文字。如果没有一个字符能被打出,则输出空行。输入样例: 7+IE. 7_This_is_a_test. 输出样例: _hs_s_a_tst1034. 有理数四则运算(20)时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue本题要求编写程序,计算 2 个有理数的和、差、积、商。输入格式:输入在一行中按照“a1/b1 a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是 整型范围内的整数,负号只可能出现在分子前,分母不为 0。输出格式:分

14、别在 4 行中按照“有理数 1 运算符 有理数 2 = 结果”的格式顺序输出 2 个有理数的和、 差、积、商。注意输出的每个有理数必须是该有理数的最简形式“k a/b”,其中 k 是整数部 分,a/b 是最简分数部分;若为负数,则须加括号;若除法分母为 0,则输出“Inf”。题目保 证正确的输出中没有超过整型范围的整数。输入样例 1: 2/3 -4/2 输出样例 1: 2/3 + (-2) = (-1 1/3) 2/3 - (-2) = 2 2/3 2/3 * (-2) = (-1 1/3) 2/3 / (-2) = (-1/3) 输入样例 2: 5/3 0/6 输出样例 2: 1 2/3 +

15、 0 = 1 2/3 1 2/3 - 0 = 1 2/3 1 2/3 * 0 = 0 1 2/3 / 0 = Inf1035. 插入与归并(25)时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列。每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置。如此迭代直到全部元素有序。归并排序进行如下迭代操作:首先将原始序列看成 N 个只包含 1 个元素的有序子序列,然 后每次迭代归并两个相邻的有序子序列,直到最后只剩下 1

16、 个有序的序列。现给定原始序列和由某排序算法产生的中间序列,请你判断该算法究竟是哪种排序算法?输入格式:输入在第一行给出正整数 N (=100);随后一行给出原始序列的 N 个整数;最后一行给出 由某排序算法产生的中间序列。这里假设排序的目标序列是升序。数字间以空格分隔。输出格式:首先在第 1 行中输出“Insertion Sort”表示插入排序、或“Merge Sort”表示归并排序;然后在 第 2 行中输出用该排序算法再迭代一轮的结果序列。题目保证每组测试的结果是唯一的。 数字间以空格分隔,且行末不得有多余空格。 输入样例 1: 10 3 1 2 8 7 5 9 4 6 0 1 2 3 7 8 5 9 4 6 0 输出样例 1: Insertion Sort 1 2 3 5 7 8 9 4 6 0 输入样例 2: 10 3 1 2 8 7 5 9 4 0 6 1 3 2 8 5 7 4 9 0 6 输出样例 2: Merge Sort 1 2 3 8 4 5 7 9 0 6

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号