PAT乙级
文章平均质量分 51
记录一些有点难度的题
八阿哥你滚远点
没事写着玩
展开
-
PAT乙级095 解码PAT准考证
1095 解码PAT准考证 (25 分)PAT 准考证号由 4 部分组成:第 1 位是级别,即T代表顶级;A代表甲级;B代表乙级; 第 2~4 位是考场编号,范围从 101 到 999; 第 5~10 位是考试日期,格式为年、月、日顺次各占 2 位; 最后 11~13 位是考生编号,范围从 000 到 999。现给定一系列考生的准考证号和他们的成绩,请你按照要求输出各种统计信息。输入格式:输入首先在一行中给出两个正整数N(≤104)和M(≤100),分别为考生人数和...原创 2021-02-21 19:24:40 · 97 阅读 · 0 评论 -
PAT乙级1094谷歌的招聘
1094 谷歌的招聘 (20 分)2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘。内容超级简单,就是一个以 .com 结尾的网址,而前面的网址是一个 10 位素数,这个素数是自然常数 e 中最早出现的 10 位连续数字。能找出这个素数的人,就可以通过访问谷歌的这个网站进入招聘流程的下一步。自然常数 e 是一个著名的超越数,前面若干位写出来是这样的:e = 2.718281828459045235360287471352662497757247093.原创 2021-02-20 21:44:38 · 136 阅读 · 0 评论 -
PAT乙级1090危险品装箱(STL的便利,set查找好用啊)
1090 危险品装箱 (25 分)集装箱运输货物时,我们必须特别小心,不能把不相容的货物装在一只箱子里。比如氧化剂绝对不能跟易燃液体同箱,否则很容易造成爆炸。本题给定一张不相容物品的清单,需要你检查每一张集装箱货品清单,判断它们是否能装在同一只箱子里。输入格式:输入第一行给出两个正整数:N(≤104) 是成对的不相容物品的对数;M(≤100) 是集装箱货品清单的单数。随后数据分两大块给出。第一块有N行,每行给出一对不相容的物品。第二块有M行,每行给出一箱货物的清单,格式...原创 2021-02-20 14:26:57 · 123 阅读 · 0 评论 -
PAT乙级1089狼人杀(通过率居然0.48)
1089 狼人杀-简单版 (20 分)以下文字摘自《灵机一动·好玩的数学》:“狼人杀”游戏分为狼人、好人两大阵营。在一局“狼人杀”游戏中,1 号玩家说:“2 号是狼人”,2 号玩家说:“3 号是好人”,3 号玩家说:“4 号是狼人”,4 号玩家说:“5 号是好人”,5 号玩家说:“4 号是好人”。已知这 5 名玩家中有 2 人扮演狼人角色,有 2 人说的不是实话,有狼人撒谎但并不是所有狼人都在撒谎。扮演狼人角色的是哪两号玩家?本题是这个问题的升级版:已知N名玩家中有 2 人扮演狼人角色,有 2 ..原创 2021-02-19 15:40:26 · 160 阅读 · 1 评论 -
PAT乙级1085 PAT单位排行
1085 PAT单位排行 (25 分)每次 PAT 考试结束后,考试中心都会发布一个考生单位排行榜。本题就请你实现这个功能。输入格式:输入第一行给出一个正整数 N(≤105),即考生人数。随后 N 行,每行按下列格式给出一个考生的信息:准考证号 得分 学校其中准考证号是由 6 个字符组成的字符串,其首字母表示考试的级别:B代表乙级,A代表甲级,T代表顶级;得分是 [0, 100] 区间内的整数;学校是由不超过 6 个英文字母组成的单位码(大小写无关)。注意:题目保证每个考生的准考原创 2021-02-18 18:04:31 · 54 阅读 · 0 评论 -
PAT乙级1084外观数列
1084 外观数列 (20 分)外观数列是指具有以下特点的整数序列:d, d1, d111, d113, d11231, d112213111, ...它从不等于 1 的数字d开始,序列的第 n+1 项是对第 n 项的描述。比如第 2 项表示第 1 项有 1 个d,所以就是d1;第 2 项是 1 个d(对应d1)和 1 个 1(对应 11),所以第 3 项就是d111。又比如第 4 项是d113,其描述就是 1 个d,2 个 1,1 个 3,所以下一项就是d11231。当然...原创 2021-02-18 11:48:10 · 103 阅读 · 0 评论 -
PAT乙级1080 MOOC期终成绩(map,结构体的动态创建)
1080 MOOC期终成绩 (25 分)对于在中国大学MOOC(http://www.icourse163.org/)学习“数据结构”课程的学生,想要获得一张合格证书,必须首先获得不少于200分的在线编程作业分,然后总评获得不少于60分(满分100)。总评成绩的计算公式为G=(Gmid−term×40%+Gfinal×60%),如果Gmid−term>Gfinal;否则总评G就是Gfinal。这里Gmid−term和Gfinal分别为学...原创 2021-02-17 15:32:06 · 201 阅读 · 0 评论 -
PAT乙级1078字符串压缩与解压
1078 字符串压缩与解压 (20 分)文本压缩有很多种方法,这里我们只考虑最简单的一种:把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示。例如ccccc就用5c来表示。如果字符没有重复,就原样输出。例如aba压缩后仍然是aba。解压方法就是反过来,把形如5c这样的表示恢复为ccccc。本题需要你根据压缩或解压的要求,对给定字符串进行处理。这里我们简单地假设原始字符串是完全由英文字母和空格组成的非空字符串。输入格式:输入第一行给出一个字符,如...原创 2021-02-16 16:33:50 · 119 阅读 · 0 评论 -
PAT乙级1075 链表元素分类
1075 链表元素分类 (25 分)给定一个单链表,请编写程序将链表元素进行分类排列,使得所有负值元素都排在非负值元素的前面,而 [0, K] 区间内的元素都排在大于 K 的元素前面。但每一类内部元素的顺序是不能改变的。例如:给定链表为 18→7→-4→0→5→-6→10→11→-2,K 为 10,则输出应该为 -4→-6→-2→7→0→5→10→18→11。输入格式:每个输入包含一个测试用例。每个测试用例第 1 行给出:第 1 个结点的地址;结点总个数,即正整数N (≤105);以...原创 2021-02-13 20:33:38 · 58 阅读 · 0 评论 -
PAT乙级1074 宇宙无敌加法器
1074 宇宙无敌加法器 (20 分)地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的。而在 PAT 星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为“PAT数”。每个 PAT 星人都必须熟记各位数字的进制表,例如“……0527”就表示最低位是 7 进制数、第 2 位是 2 进制数、第 3 位是 5 进制数、第 4 位是 10 进制数,等等。每一位的进制 d 或者是 0(表示十进制)、或者是 [2,9] 区间内的整数。理论上这个进制表应该包含无穷多位数字,但从实际应用出发原创 2021-02-12 16:45:44 · 120 阅读 · 0 评论 -
PAT乙级1073 多选题常见计分法(pat乙级最麻烦的一道题)
1073 多选题常见计分法 (20 分)批改多选题是比较麻烦的事情,有很多不同的计分方法。有一种最常见的计分方法是:如果考生选择了部分正确选项,并且没有选择任何错误选项,则得到 50% 分数;如果考生选择了任何一个错误的选项,则不能得分。本题就请你写个程序帮助老师批改多选题,并且指出哪道题的哪个选项错的人最多。输入格式:输入在第一行给出两个正整数 N(≤1000)和 M(≤100),分别是学生人数和多选题的个数。随后 M 行,每行顺次给出一道题的满分值(不超过 5 的正整数)、选项个数(不少于原创 2021-02-11 23:48:01 · 97 阅读 · 0 评论 -
PAT乙级1068 万绿丛中一点红
对于计算机而言,颜色不过是像素点对应的一个 24 位的数值。现给定一幅分辨率为M×N的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的颜色与其周围 8 个相邻像素的颜色差充分大。输入格式:输入第一行给出三个正整数,分别是M和N(≤1000),即图像的分辨率;以及 TOL,是所求像素点与相邻点的颜色差阈值,色差超过 TOL 的点才被考虑。随后N行,每行给出M个像素的颜色值,范围在[0,224)内。所有同行数字间用空格或 TAB 分开。输出格式:...原创 2021-02-09 13:52:37 · 71 阅读 · 0 评论 -
PAT乙级1058 选择题(用字符串处理时你可能遇到的采坑点!)
如果已经参考了柳神的代码,则可以略过了,我是想说这道题如果把所有数据当字符串处理遇到的大坑!1058 选择题 (20 分)批改多选题是比较麻烦的事情,本题就请你写个程序帮助老师批改多选题,并且指出哪道题错的人最多。输入格式:输入在第一行给出两个正整数 N(≤1000)和 M(≤100),分别是学生人数和多选题的个数。随后 M 行,每行顺次给出一道题的满分值(不超过 5 的正整数)、选项个数(不少于 2 且不超过 5 的正整数)、正确选项个数(不超过选项个数的正整数)、所有正确选项。注意每..原创 2021-02-08 22:50:31 · 204 阅读 · 0 评论 -
PAT乙级1065单身狗(利用set的特点)
1065 单身狗 (25 分)“单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。输入格式:输入第一行给出一个正整数 N(≤50 000),是已知夫妻/伴侣的对数;随后 N 行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个 ID 号,为 5 位数字(从 00000 到 99999),ID 间以空格分隔;之后给出一个正整数 M(≤10 000),为参加派对的总人数;随后一行给出这 M 位客人的 ID,以空格分隔。题目保证无人重婚或脚踩两条..原创 2021-02-08 20:08:43 · 126 阅读 · 0 评论 -
刷浙大oj的采坑点不定期总结(主要用c++)
1.itoa函数(将输入数字进制转换)别用,编译通不过,二进制转换需要自己写(也简单)2.用strlen函数(求字符数组的长度,不是空间大小)需要导入string,h,光导入string没用3.double型数据在极端情况下考虑运算最后统一起来,如(int) i* (double) j最好写成(i+0.0)*j,亲测,前一种卡测试点,改后一个则通过,这bug查了很久...原创 2021-02-02 14:35:18 · 636 阅读 · 1 评论 -
PAT乙级1055 集体照
拍集体照时队形很重要,这里对给定的N个人K排的队形设计排队规则如下: 每排人数为N/K(向下取整),多出来的人全部站在最后一排; 后排所有人的个子都不比前排任何人矮; 每排中最高者站中间(中间位置为m/2+1,其中m为该排人数,除法向下取整); 每排其他人以中间人为轴,按身高非增序,先右后左交替入队站在中间人的两侧(例如5人身高为190、188、186、175、170,则队形为175、188、190、186、170。这里假设你面对拍照者,所以你的左边是中间...原创 2021-02-01 20:42:42 · 64 阅读 · 0 评论 -
PAT乙级1049数列片段和采坑点(double型数据一定要注意)
using namespace std;int main(){ int N; cin >> N; long double sum = 0.0; vector<long double>data(N); for (int i = 0; i < N; i++) { scanf("%llf", &data[i]); } for (int i = 0; i < N; i++) { sum = (i + 1.0)*(N - i)*data[i].原创 2021-01-29 00:04:59 · 127 阅读 · 0 评论 -
PAT乙级1052卖个萌(队列的使用)
1052卖个萌(20分)萌萌哒表情符号通常由“手”、“眼”、“口”三个主要部分组成。简单起见,我们假设一个表情符号是按下列格式输出的:[左手]([左眼][口][右眼])[右手]现给出可选用的符号集合,请你按用户的要求输出表情。输入格式:输入首先在前三行顺序对应给出手、眼、口的可选符号集。每个符号括在一对方括号[]内。题目保证每个集合都至少有一个符号,并不超过 10 个符号;每个符号包含 1 到 4 个非空字符。之后一行给出一个正整数 K,为用户请求的个数。随后 K 行,每行给...原创 2021-01-31 11:18:14 · 123 阅读 · 0 评论 -
PAT乙级1050螺旋矩阵(用走迷宫的思路来思考,挺简单的)
1050螺旋矩阵(25分)本题要求将给定的N个正整数按非递增的顺序,填入“螺旋矩阵”。所谓“螺旋矩阵”,是指从左上角第 1 个格子开始,按顺时针螺旋方向填充。要求矩阵的规模为m行n列,满足条件:m×n等于N;m≥n;且m−n取所有可能值中的最小值。输入格式:输入在第 1 行中给出一个正整数N,第 2 行给出N个待填充的正整数。...原创 2021-01-30 21:31:15 · 136 阅读 · 1 评论