自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 PAT 甲级题目讲解:1012《The Best Rank》

double a;int rk;char cs;核心:多字段排名 + 最优解取值;统一封装函数提升复用性与可维护性;查询用数组或哈希表快速定位。

2025-08-03 14:47:31 841

原创 PAT 甲级题目讲解:1011《World Cup Betting》

本题以 2010 南非世界杯为背景,讲述了中国体育彩票提供的一个叫做 “Triple Winning(三选一)” 的投注玩法。每场比赛W(Win):胜T(Tie):平L(Lose):负每个结果都有对应赔率,即押中后按赔率收益。玩家选择任意3 场比赛,每场选择一个结果投注,总收益计算方式为profita1×a2×a3×0.65−1×2profita1​×a2​×a3​×0.65−1×2a1a2a3a1​a2​a。

2025-07-30 19:28:46 927

原创 PAT 甲级题目讲解:1010《Radix》

给定两个正整数N1N1N1和N2N2N2,数字可能包含字母(0-9a-z)表示。现已知其中一个数的进制radixradixradix,要求求出另一个数的进制radixradixradix,使得两数相等,即N1r1N2r2N1r1N2r2。若存在多个解,输出最小可能解;若无解,输出Impossible。字符串进制转换函数的设计;

2025-07-27 20:50:10 1108

原创 PAT 甲级题目讲解:1009《Product of Polynomials》

本题为稀疏多项式乘法模拟;建议使用数组作为指数映射表c[i],空间换时间;注意控制:合并同类项;按指数从大到小输出;浮点数格式%.1lf;严格空格输出。时间复杂度约为Ok1×k2Ok1​×k2​,完全可接受。

2025-07-25 18:54:38 984

原创 PAT 甲级题目讲解:1006《Sign In and Sign Out》

本题核心是字符串格式解析比较最值;统一单位(秒)是关键建模步骤;注意时间格式处理和转换成秒的计算的准确性;

2025-07-25 17:36:25 291

原创 PAT 甲级题目讲解:1004《Counting Leaves》

本题重点是树的建模 + 层序遍历;熟练掌握使用数组模拟邻接表的方法;每轮处理固定数量节点,再推进一层;注意边界处理和输出格式控制。

2025-07-25 17:12:24 503

原创 PAT 甲级题目讲解:1008《Elevator》

本题为电梯规则模拟题,不涉及算法难度,关键是认真理解题意模拟;逐层判断电梯上升或下降,并累加相应时间;注意初始化当前楼层为 0,过程中要逐次更新所在楼层数,最终只需输出总耗时。

2025-07-25 15:37:39 907

原创 PAT 甲级题目讲解:1007《Maximum Subsequence Sum》

本题核心是经典的 Kadane 算法;在遍历时使用s < 0作为重启标志;特判所有为负数的情况;同时跟踪子序列的起点和终点,方便输出原始数值。

2025-07-25 13:08:09 803

原创 PAT 甲级题目讲解:1003《Emergency》

本题为典型的单源最短路径扩展题;采用 Dijkstra 算法 + 路径计数 + 点权最大值维护;图采用链式前向星高效建图,避免邻接矩阵空间浪费。

2025-07-24 20:08:03 995

原创 PAT 甲级题目讲解:1005《Spell It Right》

大整数使用字符串读取;遍历字符求数位和;数组映射数字到英文输出。

2025-07-23 16:42:29 357

原创 PAT 甲级题目讲解:1002《A+B for Polynomials》

使用数组下标作为指数;直接累加系数;排序输出 + 精度控制。

2025-07-23 15:44:22 746

原创 PAT 甲级题目讲解:1001《A+B Format》

先求和,判断是否需要格式化;拆分数位并添加逗号;注意符号处理与字符串翻转。

2025-07-23 14:13:02 407

原创 PAT 乙级题目讲解:1017《A除以B》

给定两个正整数AAA和BBBAAA是不超过1000 位的超大正整数;BBB是一位正整数。要求输出商数QQQ和余数RRR,使得AB×QRAB×QR成立。由于AAA过大,无法使用常规整型变量处理,因此需使用字符串进行逐位除法模拟。高精度除法的竖式模拟;商数数组逐位构建;余数逐步更新传递。

2025-07-19 16:34:11 675

原创 PAT 乙级题目讲解:1016《部分A+B》

本题考查的是字符串提取 + 数字构造的模拟实现问题。给定两个正整数AAA和BBB,以及两个数字DAD_ADA​和DBD_BDB​。我们需要从AAA中提取出所有为DAD_ADA​的数字,并按原顺序拼接成一个新整数PAP_APA​;同理从BBB中提取出所有为DBD_BDB​的数字,拼接成PBP_BPB​,并输出PAPBP_A + P_BPA​PB​。p(x, dx)

2025-07-19 16:32:13 878

原创 PAT 乙级题目讲解:1015《德才论》

本题考查结构体排序与多条件比较,是一道典型的“模拟+自定义排序”问题。题目源自宋代司马光提出的“德才论”,要求我们依据德分和才分将考生分类排序。才德全尽(圣人):德分和才分均不小于优先线H;德胜才(君子):德分 ≥H,才分 <H;才德兼亡但德胜才(小人):德分 <H且才分 <H,但德分 ≥ 才分;其余及格者(愚人): 其余德分 ≥L,才分 ≥L​ 总分从高到低 → 德分从高到低 → 准考证号从小到大。(三级嵌套)读取nm++;// 分类进入 a1~a4本题是多维排序 + 多组存储。

2025-07-14 15:23:25 465

原创 PAT 乙级题目讲解:1014《福尔摩斯的约会》

福尔摩斯收到一张奇怪的字条,写着乱码一般的四行字符。作为一名侦探,他很快发现这些乱码其实是一次约会的时间信息。我们的任务是根据字符间的相同规则,解码出正确的星期、小时和分钟。星期:前两个字符串中第一个相同的大写字母,第几个字母就表示星期几;小时:前两个字符串中第一个相同的大写字母后出现的第一对相同字符,用'0''9'表示 0 ~ 9 点;'A''N'表示 10 ~ 23 点;后面两字符串第 1 对相同的英文字母出现的位置下标(从 0 开始计)。本题考查字符串逐位比较与格式化输出;

2025-07-09 14:43:19 858

原创 PAT 乙级题目讲解:1013《数素数》

本题要求输出第PMP_MPM​到第PNP_NPN​个素数,其中PiP_iPi​表示第iii个素数。**输出格式为:**每行最多输出 10 个素数,素数之间用空格隔开,末尾不得多输出空格或换行。本题本质是素数筛选 + 输出格式控制;使用埃拉托色尼筛法,高效筛选前10410^4104个素数;注意从第PmP_mPm​个开始计数,不是从mmm本身;时间复杂度Onlog⁡log⁡nOnloglogn空间复杂度On。

2025-07-06 21:05:29 1071

原创 PAT 乙级题目讲解:1012《数字分类》

A1A_1A1​:能被 5 整除的偶数的和;A2A_2A2​:被 5 除余 1 的数字交错求和(正负交替);A3A_3A3​:被 5 除余 2 的数字个数;A4A_4A4​:被 5 除余 3 的数字平均值(保留一位小数);A5A_5A5​:被 5 除余 4 的数字中的最大值。若某类数字不存在,用N代替输出。本题核心在于“分类 + 模拟 + 格式控制”每类统计逻辑独立,可单独处理输出格式是考试中常见扣分点,注意边界和控制细节时间复杂度On。

2025-07-05 20:56:38 787

原创 PAT 乙级题目讲解:1011《A+B 和 C》

A + B > C其中 A、B、C 是给定范围内的整数,重点在于格式化输出以及避免整型溢出问题。本题核心是数据边界判断和格式输出控制;注意使用long long避免溢出问题;输出格式必须严格按照编写;

2025-07-05 19:43:11 1050

原创 PAT 乙级题目讲解:1010《一元多项式求导》

本题考查的是一元多项式求导法则的程序实现。给出一个按“系数 指数”顺序输入的多项式表示,需输出它的一阶导数形式。导数计算规则:若某一项为axba x^baxb,则其一阶导数为abxb−1abxb−1。常数项(指数为 0)导数为 0,应忽略;若导数结果为空(即输入为常数多项式),则应输出0 0;输出为“系数 指数”格式,项之间用空格分隔,末尾不得多空格。熟悉一元多项式导数规则;注意特殊情况处理(常数项、零多项式);精确控制输出格式;

2025-07-05 17:45:35 693

原创 PAT 乙级题目讲解:1008《数组元素循环右移问题》

本题要求将一个长度为NNN的整数数组循环右移MMM位。所谓“循环右移”,即将数组后MMM个元素移至最前面,其余元素顺序后移。题目特别要求不能使用额外数组空间(即就地操作),这使得我们必须在原数组上完成操作,且尽量减少数据移动次数。本题核心是理解循环右移 = 三段翻转;推荐熟练掌握两种写法(手写 + STL);此技巧广泛用于数组与字符串的旋转操作;时间复杂度OnO(n)On,空间复杂度O1O(1)O1,高效且符合题目要求。

2025-07-05 16:33:09 865

原创 PAT 乙级题目讲解:1009《说反话》

本题要求对输入的一句英文句子进行单词反转输出。所谓“说反话”,不是反转字符顺序,而是将句子中各个单词的顺序进行逆序输出。一行内的字符串长度不超过 80;各单词之间仅用一个空格分隔;不含多余空格。可自动按空格分词;记录单词数量k后,逆序输出;注意边界条件与空格输出逻辑;本题为基础输入处理与字符串数组操作,适合作为输入输出训练的入门题。

2025-07-05 15:01:08 388

原创 PAT 乙级题目讲解:1007《素数对猜想》

本题考察的是数论中的一个经典问题:素数对猜想。题目定义了所谓“素数对”是指一对相邻的素数,差值为 2,例如 (3, 5)、(5, 7)、(11, 13) 等。我们需要找出所有不超过给定正整数NNN的这样的素数对个数。本题是典型的素数筛法应用题。筛法的核心是:利用质因数性质反向标记合数。巧妙地从 3 开始,步长为 2 枚举可能的素数对,提高效率。注意标记逻辑中false才代表质数,这是很多初学者易错之处。

2025-07-05 13:59:40 761

原创 PAT 乙级题目讲解:1006《换个格式输出整数》

这是一道基础模拟题,要求将三位整数拆分为百、十、个位,并按特定格式输出。解题核心是整数数位拆解和格式化输出:百位用"B"表示数量,十位用"S",个位输出1到该数字的序列。视频详细演示了样例分析、解题思路(包括数位拆分和循环输出),并提供完整代码和常见错误提醒。最后提出扩展思考,讨论如何扩展到更多位数的情况。相关讲义在GitHub持续更新,适合算法初学者练习输入输出控制与模拟。

2025-07-03 22:50:59 273

原创 PAT 乙级题目讲解:1005 《继续(3n+1)猜想》

本题延续了 1001 题的“(3n+1)猜想”,但这次输入的是一组正整数,任务是找出这些数中“关键数”没有出现在其他数字的验证路径中的数。题目要求将所有关键数按从大到小的顺序输出。熟练掌握(3n+1)模拟建模;学会在路径遍历中构建覆盖集合;筛选出未被覆盖的“关键节点”;注重输出格式控制,避免低级失误。本题是集合判定与路径覆盖思想的结合实践,建议作为 1001 题的进阶练习来理解。

2025-07-03 15:39:54 701

原创 PAT 乙级题目讲解:1004《成绩排名》

给出若干学生的姓名、学号和成绩,要求输出成绩最高和成绩最低的学生信息。结构体定义 + 排序应用 + 信息提取能力熟悉结构体存储批量数据的使用方式;理解排序后访问边界元素的策略;提高读取、建模、排序、输出流程的完整思维链。

2025-07-03 13:17:12 239

原创 PAT 乙级题目讲解:1003《我要通过!》

输入若干字符串,判断它们是否满足“PAT 判题系统”的合法构成规则。字符串仅包含PAT三种字母;满足结构:形如xPATx,其中x可以是空或只包含若干个A;若aPbTc合法,则aPbATca也合法,其中abc均为空或由A构成。模型抽象 + 字符处理 + 数学约束验证结构识别能力:字符串模式的拆分与定位;数学模型归纳:抽象为乘法关系;字符串遍历与索引处理的细致性检验。

2025-07-01 22:29:08 608

原创 PAT 乙级题目讲解:1002《写出这个数》

给定一个不超过 100 位的正整数,求其各位数字之和,并将每一位用拼音输出。拼音之间用空格分隔,最后一位后不带空格。输入处理 + 数位拆解 + 映射输出的综合练习。学会使用字符串处理大整数;掌握数字 → 拼音的映射构造方法;提高输出格式控制与边界判断能力。

2025-07-01 22:18:03 378

原创 PAT 乙级题目讲解:1001《害死人不偿命的(3n+1)猜想》

状态转移模型的入门题。掌握最基础的“当前状态 → 下一个状态”模型;理解循环控制结构与终止判断;学会使用变量精简和运算优化技巧(如直接合并/2。

2025-07-01 22:12:33 262

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除