数据结构和算法
做题的题解和思路
陌巷旧雨
备赛
展开
-
【PAT乙级】1037 在霍格沃茨找零钱
问题描述如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易。”现在,给定哈利应付的价钱 P 和他实付的钱 A,你的任务是写一个程序来计算他应该被找的零钱。输入格式输入在 1 行中分别给出 P 和 A,格式为 Galleon.Sickle.Knut,其间用 1 个空格分隔。这里 Galleon 是 [0,10710^7107] 区间内的整数,Sickle 是原创 2020-10-23 10:56:22 · 45 阅读 · 0 评论 -
【PAT乙级】1072 开学寄语
问题描述下图是上海某校的新学期开学寄语:天将降大任于斯人也,必先删其微博,卸其 QQ,封其电脑,夺其手机,收其 ipad,断其 wifi,使其百无聊赖,然后,净面、理发、整衣,然后思过、读书、锻炼、明智、开悟、精进。而后必成大器也!本题要求你写个程序帮助这所学校的老师检查所有学生的物品,以助其成大器。输入格式输入第一行给出两个正整数 N(≤ 1000)和 M(≤ 6),分别是学生人数和需要被查缴的物品种类数。第二行给出 M 个需要被查缴的物品编号,其中编号为 4 位数字。随后 N 行,每行给出一位学原创 2020-11-20 20:18:04 · 93 阅读 · 0 评论 -
【PAT乙级】1089 狼人杀-简单版
问题描述以下文字摘自《灵机一动·好玩的数学》:“狼人杀”游戏分为狼人、好人两大阵营。在一局“狼人杀”游戏中,1 号玩家说:“2 号是狼人”,2 号玩家说:“3 号是好人”,3 号玩家说:“4 号是狼人”,4 号玩家说:“5 号是好人”,5 号玩家说:“4 号是好人”。已知这 5 名玩家中有 2 人扮演狼人角色,有 2 人说的不是实话,有狼人撒谎但并不是所有狼人都在撒谎。扮演狼人角色的是哪两号玩家?本题是这个问题的升级版:已知 N 名玩家中有 2 人扮演狼人角色,有 2 人说的不是实话,有狼人撒谎但并不是原创 2020-12-07 00:11:00 · 136 阅读 · 0 评论 -
【PAT乙级】1033 旧键盘打字
问题描述<旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?/font>输入格式输入在 2 行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过10510^5105个字符的串。可用的字符包括字母 [a-z, A-Z]、数字 0-9、以及下划线 _(代表空格)、,、.、-、+(代表上档键)。题目保证第 2 行输入的文字串非空。注意:如果上档键坏掉了,那么大写的英原创 2020-12-06 23:33:11 · 75 阅读 · 0 评论 -
【PAT乙级】1047 编程团体赛
问题描述编程团体赛的规则为:每个参赛队由若干队员组成;所有队员独立比赛;参赛队的成绩为所有队员的成绩和;成绩最高的队获胜。现给定所有队员的比赛成绩,请你编写程序找出冠军队。输入格式输入第一行给出一个正整数 N(≤104)(≤10^4)(≤104),即所有参赛队员总数。随后 N 行,每行给出一位队员的成绩,格式为:队伍编号-队员编号 成绩,其中队伍编号为 1 到 1000 的正整数,队员编号为 1 到 10 的正整数,成绩为 0 到 100 的整数。输出格式在一行中输出冠军队的编号和总成绩,其间以原创 2020-10-23 11:03:30 · 70 阅读 · 0 评论 -
【PAT乙级】1028 人口普查
问题描述某城镇进行人口普查,得到了全体居民的生日。现请你写个程序,找出镇上最年长和最年轻的人。这里确保每个输入的日期都是合法的,但不一定是合理的——假设已知镇上没有超过 200 岁的老人,而今天是 2014 年 9 月 6 日,所以超过 200 岁的生日和未出生的生日都是不合理的,应该被过滤掉。输入格式输入在第一行给出正整数 N,取值在(0,105](0,10^5](0,105];随后 N 行,每行给出 1 个人的姓名(由不超过 5 个英文字母组成的字符串)、以及按 yyyy/mm/dd(即年/月/原创 2020-11-06 17:14:10 · 99 阅读 · 0 评论 -
【PAT乙级】1082 射击比赛
问题描述本题目给出的射击比赛的规则非常简单,谁打的弹洞距离靶心最近,谁就是冠军;谁差得最远,谁就是菜鸟。本题给出一系列弹洞的平面坐标(x,y),请你编写程序找出冠军和菜鸟。我们假设靶心在原点(0,0)。输入格式输入在第一行中给出一个正整数 N(≤ 10 000)。随后 N 行,每行按下列格式给出:ID x y其中 ID 是运动员的编号(由 4 位数字组成);x 和 y 是其打出的弹洞的平面坐标(x,y),均为整数,且 0 ≤ |x|, |y| ≤ 100。题目保证每个运动员的编号不重复,且每人只打原创 2020-10-25 16:38:01 · 153 阅读 · 0 评论 -
【PAT乙级】1033 旧键盘打字
问题描述旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式输入在 2 行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过 10510^5105 个字符的串。可用的字符包括字母 [a-z, A-Z]、数字 0-9、以及下划线 _(代表空格)、,、.、-、+(代表上档键)。题目保证第 2 行输入的文字串非空。注意:如果上档键坏掉了,那么大写的英文字母无法被打出。输原创 2020-11-09 13:36:30 · 65 阅读 · 0 评论 -
【PAT乙级】1087 有多少不同的值
问题描述当自然数 n 依次取 1、2、3、……、N 时,算式 ⌊n/2⌋+⌊n/3⌋+⌊n/5⌋ 有多少个不同的值?(注:⌊x⌋ 为取整函数,表示不超过 x 的最大自然数,即 x 的整数部分。)输入格式输入给出一个正整数 N (2≤N≤104)(2≤N≤10^4)(2≤N≤104) 输出格式在一行中输出题面中算式取到的不同值的个数。样例输入2017样例输出1480C++代码#include<bits/stdc++.h>using namespace std;int ma原创 2020-11-03 14:43:49 · 77 阅读 · 0 评论 -
【PAT乙级】1010 一元多项式求导
问题描述设计函数求一元多项式的导数。(注:x∗nx*nx∗n(n为整数)的一阶导数为nxn−1nx^{n-1}nxn−1。)输入格式以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。输出格式以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0。样例输入3 4 -5 2 6 1 -2 0样例输出12 3 -10 1 6 0C++代码#includ原创 2020-12-06 23:10:03 · 57 阅读 · 0 评论 -
【PAT乙级】1091 N-自守数
问题描述如果某个数 K 的平方乘以 N 以后,结果的末尾几位数等于 K,那么就称这个数为“N-自守数”。例如 3×922=253923×92^2=253923×922=25392,而 25392 的末尾两位正好是 92,所以 92 是一个 3-自守数。本题就请你编写程序判断一个给定的数字是否关于某个 N 是 N-自守数。输入格式输入在第一行中给出正整数 M(≤20),随后一行给出 M 个待检测的、不超过 1000 的正整数。输出格式对每个需要检测的数字,如果它是 N-自守数就在一行中输出最小的原创 2020-11-03 13:55:11 · 120 阅读 · 0 评论 -
【PAT乙级】1067 试密码
问题描述当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死。本题就请你实现这个小功能。输入格式输入在第一行给出一个密码(长度不超过 20 的、不包含空格、Tab、回车的非空字符串)和一个正整数 N(≤ 10),分别是正确的密码和系统允许尝试的次数。随后每行给出一个以回车结束的非空字符串,是用户尝试输入的密码。输入保证至少有一次尝试。当读到一行只有单个 # 字符时,输入结束,并且这一行不是用户的输入。输出格式对用户的每个输入,如果是正确的密码且尝试次数原创 2020-11-19 22:57:34 · 123 阅读 · 1 评论 -
【PAT乙级】1005 继续(3n+1)猜想
问题描述卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n=3 进行验证的时候,我们需要计算 3、5、8、4、2、1,则当我们对 n=5、8、4、2 进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这 4 个数已经在验证3的时候遇到过了,我们称 5、8、4、2 是被 3“覆盖”的数。我们称一个数列中的某个数 n 为“关键数”,如果 n 不能被数列中的其他原创 2020-10-26 22:43:18 · 48 阅读 · 0 评论 -
【PAT乙级】1040 有几个PAT
问题描述字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位§,第 4 位(A),第 6 位(T);第二个 PAT 是第 3 位§,第 4 位(A),第 6 位(T)。现给定字符串,问一共可以形成多少个 PAT?输入格式输入只有一行,包含一个字符串,长度不超过10510^5105,只包含 P、A、T 三种字母。输出格式在一行中输出给定字符串中包含多少个 PAT。由于结果可能比较大,只输出对 1000000007 取余数的结果。样例输入APPAPT样例输出2C原创 2020-12-07 00:01:52 · 55 阅读 · 0 评论 -
【PAT乙级】部分题目解答汇总
1001 害死人不偿命的(3n+1)猜想原创 2020-10-20 22:28:44 · 139 阅读 · 0 评论 -
【PAT乙级】1031 查验身份证
问题描述一个合法的身份证号码由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 10M:1 0 X 9 8 7 6 5 4 3 2现在给定一些身份证号码,请你验证校验码的有效性,并输出有问题的号码。输入格式输入第一行给出正整数N(≤100)是输原创 2020-11-07 15:20:32 · 43 阅读 · 0 评论 -
【PAT乙级】1069 微博转发抽奖
问题描述小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包。请你编写程序帮助他确定中奖名单。输入格式输入第一行给出三个正整数 M(≤ 1000)、N 和 S,分别是转发的总量、小明决定的中奖间隔、以及第一位中奖者的序号(编号从 1 开始)。随后 M 行,顺序给出转发微博的网友的昵称(不超过 20 个字符、不包含空格回车的非空字符串)。注意:可能有人转发多次,但不能中奖多次。所以如果处于当前中奖位置的网友已经中过奖,则跳过他顺次取下一位。输出格原创 2020-11-19 22:50:55 · 54 阅读 · 0 评论 -
【PAT乙级】1093 字符串A+B
问题描述给定两个字符串 A 和 B,本题要求你输出 A+B,即两个字符串的并集。要求先输出 A,再输出 B,但重复的字符必须被剔除。输入格式输入在两行中分别给出 A 和 B,均为长度不超过10610^6106的、由可见 ASCII 字符 (即码值为32~126)和空格组成的、由回车标识结束的非空字符串。输出格式在一行中输出题面要求的 A 和 B 的和。样例输入This is a sample testto show you_How it works样例输出This ampletowyu_原创 2020-11-03 12:00:25 · 85 阅读 · 0 评论 -
【PAT乙级】1077 互评成绩计算
C++代码#include<bits/stdc++.h>using namespace std;int main(){ int N,M; cin>>N>>M; int n=N; while(N--){ int g2; cin>>g2; vector<int>a; int sum=0; for(int i=0;i<n-1;i+.原创 2020-10-25 15:54:32 · 49 阅读 · 0 评论 -
【PAT乙级】1029 旧键盘
问题描述旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入格式输入在 2 行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过 80 个字符的串,由字母 A-Z(包括大、小写)、数字 0-9、以及下划线 _(代表空格)组成。题目保证 2 个字符串均非空。输出格式按照发现顺序,在一行中输出坏掉的键。其中英文字母只输出大写,每个坏键只输出一次。题目保证至少有 1 个坏键。样例输入7_Thi原创 2020-11-06 20:47:02 · 43 阅读 · 0 评论 -
【PAT乙级】1016 部分A+B
C++代码#include<bits/stdc++.h>using namespace std;int Search(long long int x,int dx){ int num=0; while(x!=0){ if(x%10==dx) num++; x/=10; } return num;}long long int Px(long long int x,int num){ long long sum=.原创 2020-10-23 00:15:32 · 64 阅读 · 0 评论 -
【PAT乙级】1008 数组元素循环右移问题
样例输入6 21 2 3 4 5 6样例输出5 6 1 2 3 4分析一开始想得太复杂:每个字符直接跳到最终位置,还需要考虑M是否能够整除N,如果整除就代表一次循环之后只能使M个数字移至最终位置,不整除则一次循环之后所有数字都能移至最终位置。后来参考了柳神的代码,学到了学到了!C++代码#include <bits/stdc++.h>using namespace std;int main() { int n, m; cin >> n >.原创 2020-12-06 22:18:38 · 55 阅读 · 0 评论 -
【PAT乙级】1090 危险品装箱
问题描述集装箱运输货物时,我们必须特别小心,不能把不相容的货物装在一只箱子里。比如氧化剂绝对不能跟易燃液体同箱,否则很容易造成爆炸。本题给定一张不相容物品的清单,需要你检查每一张集装箱货品清单,判断它们是否能装在同一只箱子里。输入格式输入第一行给出两个正整数:N (≤10410^4104 ) 是成对的不相容物品的对数;M (≤100) 是集装箱货品清单的单数。随后数据分两大块给出。第一块有 N 行,每行给出一对不相容的物品。第二块有 M 行,每行给出一箱货物的清单,格式如下:K G[1] G[2原创 2020-12-07 00:12:34 · 115 阅读 · 0 评论 -
【PAT乙级】1021 个位数统计
C++代码#include<bits/stdc++.h>using namespace std;int main(){ int a[10]={0},i=0; char c[1001]; cin.getline(c,1001); for(int i=0;c[i]!='\0';i++){ a[c[i]-'0']++; } for(int i=0;i<10;i++) if(a[i.原创 2020-10-21 23:59:16 · 45 阅读 · 0 评论 -
【PAT乙级】1076 Wifi密码
问题描述下面是微博上流传的一张照片:“各位亲爱的同学们,鉴于大家有时需要使用 wifi,又怕耽误亲们的学习,现将 wifi 密码设置为下列数学题答案:A-1;B-2;C-3;D-4;请同学们自己作答,每两日一换。谢谢合作!!~”—— 老师们为了促进学生学习也是拼了…… 本题就要求你写程序把一系列题目的答案按照卷子上给出的对应关系翻译成 wifi 的密码。这里简单假设每道选择题都有 4 个选项,有且只有 1 个正确答案。输入格式输入第一行给出一个正整数 N(≤ 100),随后 N 行,每行按照 编号-答原创 2020-10-23 12:02:45 · 76 阅读 · 0 评论 -
【PAT乙级】1027 打印沙漏
问题描述本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。输入格式输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。输出格式首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。样例输入原创 2020-11-06 16:27:05 · 119 阅读 · 0 评论 -
【PAT乙级】1023 组个最小数
标题问题描述输入格式输出格式样例输入样例输出样例说明数据规模与约定分析C++代码在这里插入代码片Tips**备注**原创 2020-10-22 11:44:47 · 102 阅读 · 0 评论 -
【PAT乙级】1018 锤子剪刀布
问题描述大家应该都会玩“锤子剪刀布”的游戏。现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。输入格式输入第 1 行给出正整数 N (≤105)(≤10^5)(≤105),即双方交锋的次数。随后 N 行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C 代表“锤子”、J 代表“剪刀”、B 代表“布”,第 1 个字母代表甲方,第 2 个代表乙方,中间有 1 个空格。输出格式输出第 1、2 行分别给出甲、乙的胜、平、负次数,数字间以 1 个空格分隔。第 3原创 2020-11-03 20:26:13 · 42 阅读 · 0 评论 -
【PAT乙级】1092 最好吃的月饼
问题描述月饼是久负盛名的中国传统糕点之一,自唐朝以来,已经发展出几百品种。若想评比出一种“最好吃”的月饼,那势必在吃货界引发一场腥风血雨…… 在这里我们用数字说话,给出全国各地各种月饼的销量,要求你从中找出销量冠军,认定为最好吃的月饼。输入格式输入首先给出两个正整数 N(≤1000)和 M(≤100),分别为月饼的种类数(于是默认月饼种类从 1 到 N 编号)和参与统计的城市数量。接下来 M 行,每行给出 N 个非负整数(均不超过 1 百万),其中第 i 个整数为第 i 种月饼的销量(块)。数字间原创 2020-11-27 23:46:01 · 78 阅读 · 0 评论 -
【PAT乙级】1009 说反话
问题描述给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。输出格式每个测试用例的输出占一行,输出倒序后的句子。样例输入Hello World Here I Come样例输出Come I Here World HelloC++代码#include <bits原创 2020-12-06 23:07:36 · 73 阅读 · 0 评论 -
【PAT乙级】1001 害死人不偿命的(3n+1)猜想
问题描述卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……我们今天的题目不是证明卡拉兹猜想,而是对给定的任一不超过 1000 的正整数原创 2020-10-19 22:44:00 · 48 阅读 · 0 评论 -
【PAT乙级】1025 反转链表
问题描述给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转。例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→4;如果 K 为 4,则输出应该为 4→3→2→1→5→6,即最后不到 K 个元素不反转。输入格式每个输入包含 1 个测试用例。每个测试用例第 1 行给出第 1 个结点的地址、结点总个数正整数 N (≤105)(≤10^5)(≤105)、以及正整数 K (≤N),即要求反转的子链结点的个数。结点的地址是 5 位非负整数,NULL原创 2020-11-06 15:22:09 · 47 阅读 · 0 评论 -
【PAT乙级】1022 D进制的A+B
问题描述输入两个非负 10 进制整数 A 和 B (≤ 2302^{30}230 −1),输出 A+B 的 D (1<D≤10)进制数。输入格式输入在一行中依次给出 3 个整数 A、B 和 D。输出格式输出 A+B 的 D 进制数。样例输入123 456 8样例输出1103C++代码#include <bits/stdc++.h>using namespace std;int main() { long long a, b, sum; int原创 2020-12-06 23:22:04 · 48 阅读 · 0 评论 -
【PAT乙级】1063 计算谱半径
C++代码#include<bits/stdc++.h>using namespace std;int main(){ int n; cin>>n; vector<int>mod; for(int i=0;i<n;i++){ int a,b; cin>>a>>b; mod.push_back(a*a+b*b); } sort(mod.beg.原创 2020-10-23 11:23:20 · 59 阅读 · 0 评论 -
【PAT乙级】1066 图像过滤
问题描述图像过滤是把图像中不重要的像素都染成背景色,使得重要部分被凸显出来。现给定一幅黑白图像,要求你将灰度值位于某指定区间内的所有像素颜色都用一种指定的颜色替换。输入格式输入在第一行给出一幅图像的分辨率,即两个正整数 M 和 N(0<M,N≤500),另外是待过滤的灰度值区间端点 A 和 B(0≤A<B≤255)、以及指定的替换灰度值。随后 M 行,每行给出 N 个像素点的灰度值,其间以空格分隔。所有灰度值都在 [0, 255] 区间内。输出格式输出按要求过滤后的图像。即输出 M 行原创 2020-11-19 23:19:25 · 203 阅读 · 0 评论 -
【PAT乙级】1015 德才论
问题描述宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。输入格式输入第一行给出 3 个正整数,分别为:N(≤10510^5105),即考生总数;L(≥60),为录取最低分数线,即德分和才分均不低于 L 的考生才有资格被考虑录取;H(<100),为优先录取线——德分和才分均不低于此线的被定义为“才原创 2020-12-06 23:29:05 · 71 阅读 · 0 评论 -
【PAT乙级】1060 爱丁顿数
问题描述英国天文学家爱丁顿很喜欢骑车。据说他为了炫耀自己的骑车功力,还定义了一个“爱丁顿数” E ,即满足有 E 天骑车超过 E 英里的最大整数 E。据说爱丁顿自己的 E 等于87。现给定某人 N 天的骑车距离,请你算出对应的爱丁顿数 E(≤N)。输入格式输入第一行给出一个正整数 N ( ≤105≤10^5≤105) ,即连续骑车的天数;第二行给出 N 个非负整数,代表每天的骑车距离。输出格式在一行中给出 N 天的爱丁顿数。样例输入106 7 6 9 3 10 8 2 7 8C++代码原创 2020-11-12 19:59:04 · 90 阅读 · 0 评论 -
【PAT乙级】1004 成绩排名
问题描述读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号输入格式每个测试输入包含 1 个测试用例,格式为第 1 行:正整数 n第 2 行:第 1 个学生的姓名 学号 成绩第 3 行:第 2 个学生的姓名 学号 成绩… … …第 n+1 行:第 n 个学生的姓名 学号 成绩其中姓名和学号均为不超过 10 个字符的字符串,成绩为 0 到 100 之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的输出格式对每个测试用例输出 2 行,第原创 2020-10-20 22:14:41 · 53 阅读 · 0 评论 -
【PAT乙级】1038 统计同成绩学生
问题描述本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出。输入格式输入在第 1 行给出不超过 10510^5105 的正整数 N,即学生总人数。随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔。最后一行给出要查询的分数个数 K(不超过 N 的正整数),随后是 K 个分数,中间以空格分隔。输出格式在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格。样例输入1060 75 90 55 75 99 82 90 75 503 75 90原创 2020-11-09 19:03:23 · 150 阅读 · 0 评论 -
【PAT乙级】1064 朋友数
问题描述如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”。例如 123 和 51 就是朋友数,因为 1+2+3 = 5+1 = 6,而 6 就是它们的朋友证号。给定一些整数,要求你统计一下它们中有多少个不同的朋友证号。输入格式输入第一行给出正整数 N。随后一行给出 N 个正整数,数字间以空格分隔。题目保证所有数字小于10410^4104。输出格式首先第一行输出给定数字中不同的朋友证号的个数;随后一行按递增顺序输出这些朋友证号,数字间隔一个空格,且行末不得原创 2020-10-24 00:05:46 · 56 阅读 · 0 评论