![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PAT 乙级
文章平均质量分 62
刘小花Crystal
刚刚起步的菜鸟
展开
-
【PAT 乙级】1001 害死人不偿命的(3n+1)猜想
1001 害死人不偿命的(3n+1)猜想 (15)(15 分)卡拉兹(Callatz)猜想:对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至...原创 2018-06-30 10:08:13 · 226 阅读 · 0 评论 -
【PAT 乙级】1021 个位数统计
1021 个位数统计 (15)(15 分)给定一个k位整数N = d~k-1~*10^k-1^ + ... + d~1~*10^1^ + d~0~ (0<=d~i~<=9, i=0,...,k-1, d~k-1~>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定N = 100311,则有2个0,3个1,和1个3。输入格式:每个输入包含1个测试用例,即一个不超过1000...原创 2018-07-02 08:21:37 · 262 阅读 · 0 评论 -
【PAT 乙级】1022 D进制的A+B
1022 D进制的A+B (20)(20 分)输入两个非负10进制整数A和B(<=2^30^-1),输出A+B的D (1 < D <= 10)进制数。输入格式:输入在一行中依次给出3个整数A、B和D。输出格式:输出A+B的D进制数。输入样例:123 456 8输出样例:1103这题就是进制转换,注意考虑A和B全为0的情况。我的代码如下:#include<iostream&...原创 2018-07-02 09:16:34 · 209 阅读 · 0 评论 -
【PAT 乙级】1023 组个最小数
1023 组个最小数 (20)(20 分)给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小的数就是10015558。现给定数字,请编写程序输出能够组成的最小的数。输入格式:每个输入包含1个测试用例。每个测试用例在一行中给出10个非负整数,顺序表示我们拥有数字0、数字1、...原创 2018-07-02 10:25:43 · 181 阅读 · 0 评论 -
【PAT 乙级】1026 程序运行时间
1026 程序运行时间(15)(15 分)要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间。这个时间单位是clock tick,即“时钟打点”。同时还有一个常数CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数f的运行时间,我们只要在调用f之前先调用clock(),获得...原创 2018-07-02 16:19:32 · 172 阅读 · 0 评论 -
【PAT 乙级】1082 射击比赛
1082 射击比赛(20 分)本题目给出的射击比赛的规则非常简单,谁打的弹洞距离靶心最近,谁就是冠军;谁差得最远,谁就是菜鸟。本题给出一系列弹洞的平面坐标(x,y),请你编写程序找出冠军和菜鸟。我们假设靶心在原点(0,0)。输入格式:输入在第一行中给出一个正整数 N(≤ 10 000)。随后 N 行,每行按下列格式给出:ID x y其中 ID 是运动员的编号(由 4 位数字组成);x 和 y 是...原创 2018-07-09 18:28:52 · 393 阅读 · 0 评论 -
【PAT 乙级】1027 打印沙漏
1027 打印沙漏(20)(20 分)本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印***** *** * ********所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的...原创 2018-07-03 09:47:48 · 504 阅读 · 0 评论 -
【PAT 乙级】1028 人口普查
1028 人口普查(20)(20 分)某城镇进行人口普查,得到了全体居民的生日。现请你写个程序,找出镇上最年长和最年轻的人。这里确保每个输入的日期都是合法的,但不一定是合理的——假设已知镇上没有超过200岁的老人,而今天是2014年9月6日,所以超过200岁的生日和未出生的生日都是不合理的,应该被过滤掉。输入格式:输入在第一行给出正整数N,取值在(0, 10^5^];随后N行,每行给出1个人的姓名...原创 2018-07-03 10:53:34 · 377 阅读 · 0 评论 -
【PAT 乙级】1083 是否存在相等的差
1083 是否存在相等的差(20 分)给定 N 张卡片,正面分别写上 1、2、……、N,然后全部翻面,洗牌,在背面分别写上 1、2、……、N。将每张牌的正反两面数字相减(大减小),得到 N 个非负差值,其中是否存在相等的差?输入格式:输入第一行给出一个正整数 N(2 ≤ N ≤ 10 000),随后一行给出 1 到 N 的一个洗牌后的排列,第 i 个数表示正面写了 i 的那张卡片背面的数字。输出格...原创 2018-07-09 21:29:42 · 334 阅读 · 0 评论 -
【PAT 乙级】1030 完美数列
1030 完美数列(25)(25 分)给定一个正整数数列,和正整数p,设这个数列中的最大值是M,最小值是m,如果M <= m * p,则称这个数列是完美数列。现在给定参数p和一些正整数,请你从中选择尽可能多的数构成一个完美数列。输入格式:输入第一行给出两个正整数N和p,其中N(<= 10^5^)是输入的正整数的个数,p(<= 10^9^)是给定的参数。第二行给出N个正整数,每个数...原创 2018-07-03 20:50:48 · 268 阅读 · 0 评论 -
【PAT 乙级】1031 查验身份证
1031 查验身份证(15)(15 分)一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,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...原创 2018-07-04 09:35:25 · 262 阅读 · 0 评论 -
【PAT 乙级】1032 挖掘机技术哪家强
1032 挖掘机技术哪家强(20)(20 分)为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。输入格式:输入在第1行给出不超过10^5^的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从1开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。输出格式:在一行中给出总得分最高的学校的编号、及...原创 2018-07-04 11:13:04 · 268 阅读 · 0 评论 -
【PAT 乙级】1020 月饼
1020 月饼 (25)(25 分)月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有3种月饼,其库存量分别为18、15、10万吨,总售价分别为75、72、45亿元。如果市场的最大需求量只有20万吨,那么我们最大收益策略...原创 2018-07-01 23:04:55 · 190 阅读 · 0 评论 -
【PAT 乙级】1019 数字黑洞
1019 数字黑洞 (20)(20 分)给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫Kaprekar常数。例如,我们从6767开始,将得到7766 - 6677 = 1089\ 9810 - 0189 = 9621\ 962...原创 2018-07-01 21:17:41 · 196 阅读 · 0 评论 -
【PAT 乙级】1002 写出这个数
1002 写出这个数 (20)(20 分)读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10^100^。输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。输入样例:1234567890987654321123456789输出样例:yi san wu...原创 2018-06-30 10:14:56 · 197 阅读 · 0 评论 -
【PAT 乙级】1003 我要通过!
1003 我要通过!(20)(20 分)“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于PAT的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:1. 字符串中必须仅有P, A, T这三种字符,不可以包含其它字符;2.任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母...原创 2018-06-30 10:25:26 · 167 阅读 · 0 评论 -
【PAT 乙级】1004 成绩排名
1004 成绩排名 (20)(20 分)读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。输入格式:每个测试输入包含1个测试用例,格式为 第1行:正整数n 第2行:第1个学生的姓名 学号 成绩 第3行:第2个学生的姓名 学号 成绩 ... ... ... 第n+1行:第n个学生的姓名 学号 成绩其中姓名和学号均为不超过10个字符的字符串,成绩为0到100之间的一个...原创 2018-06-30 10:29:08 · 226 阅读 · 0 评论 -
【PAT 乙级】1005 继续(3n+1)猜想
1005 继续(3n+1)猜想 (25)(25 分)卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对n=3进行验证的时候,我们需要计算3、5、8、4、2、1,则当我们对n=5、8、4、2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这4个数已经在验...原创 2018-06-30 10:34:30 · 123 阅读 · 0 评论 -
【PAT 乙级】1011 A+B和C
1011 A+B和C (15)(15 分)给定区间[-2^31^, 2^31^]内的3个整数A、B和C,请判断A+B是否大于C。输入格式:输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。输出格式:对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case #X: false”...原创 2018-06-30 10:40:51 · 289 阅读 · 0 评论 -
【PAT 乙级】1012 数字分类
1012 数字分类 (20)(20 分)给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4...;A3 = 被5除后余2的数字的个数;A4 = 被5除后余3的数字的平均数,精确到小数点后1位;A5 = 被5除后余4的数字中最大数字。输入格式:每个输入包含1个测试用...原创 2018-06-30 10:45:34 · 186 阅读 · 0 评论 -
【PAT 乙级】1014 福尔摩斯的约会
1014 福尔摩斯的约会 (20)(20 分)大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文字母(大小写有区分)是第4个字母'D',代表星期四;第2对相...原创 2018-06-30 16:41:12 · 160 阅读 · 0 评论 -
【PAT 乙级】1013 数素数
1013 数素数 (20)(20 分)令P~i~表示第i个素数。现任给两个正整数M <= N <= 10^4^,请输出P~M~到P~N~的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:输出从P~M~到P~N~的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。输入样例:5 27输出样例:11 13 17 19 23 29 31 37 41 4...原创 2018-06-30 18:27:47 · 192 阅读 · 0 评论 -
【PAT 乙级】1010 一元多项式求导
1010 一元多项式求导 (25)(25 分)设计函数求一元多项式的导数。(注:x^n^(n为整数)的一阶导数为n*x^n-1^。)输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是0,但是表示为“0 0”。输入...原创 2018-06-30 18:39:23 · 162 阅读 · 0 评论 -
【PAT 乙级】1006 换个格式输出整数
1006 换个格式输出整数 (15)(15 分)让我们用字母B来表示“百”、字母S表示“十”,用“12...n”来表示个位数字n(&lt10),换个格式来输出任一个不超过3位的正整数。例如234应该被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。输入格式:每个测试输入包含1个测试用例,给出正整数n(&lt1000)。输出格式:每个测试用例的输出占一行,用规...原创 2018-07-01 15:54:02 · 148 阅读 · 0 评论 -
【PAT 乙级】1007 素数对猜想
1007 素数对猜想 (20)(20 分)让我们定义 d~n~ 为:d~n~ = p~n+1~ - p~n~,其中 p~i~ 是第i个素数。显然有 d~1~=1 且对于n&gt1有 d~n~ 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N (< 10^5^),请计算不超过N的满足猜想的素数对的个数。输入格式:每个测试输入包含1个测试用例,给出正整数N...原创 2018-07-01 15:54:25 · 170 阅读 · 0 评论 -
【PAT 乙级】1009 说反话
1009 说反话 (20)(20 分)给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。输出格式:每个测试用例的输出占一行,输出倒序后的句子。输入样例:Hello World H...原创 2018-07-01 15:54:10 · 173 阅读 · 0 评论 -
【PAT 乙级】1008 数组元素循环右移问题
1008 数组元素循环右移问题 (20)(20 分)一个数组A中存有N(N&gt0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(M>=0)个位置,即将A中的数据由(A~0~ A~1~……A~N-1~)变换为(A~N-M~ …… A~N-1~ A~0~ A~1~……A~N-M-1~)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设...原创 2018-07-01 15:54:17 · 119 阅读 · 0 评论 -
【PAT 乙级】1016 部分A+B
1016 部分A+B (15)(15 分)正整数A的“D~A~(为1位整数)部分”定义为由A中所有D~A~组成的新整数P~A~。例如:给定A = 3862767,D~A~ = 6,则A的“6部分”P~A~是66,因为A中有2个6。现给定A、D~A~、B、D~B~,请编写程序计算P~A~ + P~B~。输入格式:输入在一行中依次给出A、D~A~、B、D~B~,中间以空格分隔,其中0 < A, ...原创 2018-07-01 16:42:13 · 158 阅读 · 0 评论 -
【PAT 乙级】1017 A除以B
1017 A除以B (20)(20 分)本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。输入格式:输入在1行中依次给出A和B,中间以1空格分隔。输出格式:在1行中依次输出Q和R,中间以1空格分隔。输入样例:123456789050987654321 7输出样例:17636684150141093474 3这题就是...原创 2018-07-01 19:15:46 · 218 阅读 · 0 评论 -
【PAT 乙级】1018 锤子剪刀布
1018 锤子剪刀布 (20)(20 分)大家应该都会玩“锤子剪刀布”的游戏:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。输入格式:输入第1行给出正整数N(<=10^5^),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空...原创 2018-07-01 19:50:44 · 153 阅读 · 0 评论 -
【PAT 乙级】1033 旧键盘打字
1033 旧键盘打字(20)(20 分)旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在2行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过10^5^个字符的串。可用的字符包括字母[a-z, A-Z]、数字0-9、以及下划线“_”(代表空格)、“,”...原创 2018-07-04 13:03:39 · 898 阅读 · 0 评论