![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PAT乙级
文章平均质量分 97
玮智能
电子跨考计算机,发现算法很有天赋,奈何学晚了。
展开
-
7-40 奥运排行榜 (25分) 函数指针数组 C++版
7-40 奥运排行榜 (25分)每年奥运会各大媒体都会公布一个排行榜,但是细心的读者发现,不同国家的排行榜略有不同。比如中国金牌总数列第一的时候,中国媒体就公布“金牌榜”;而美国的奖牌总数第一,于是美国媒体就公布“奖牌榜”。如果人口少的国家公布一个“国民人均奖牌榜”,说不定非洲的国家会成为榜魁…… 现在就请你写一个程序,对每个前来咨询的国家按照对其最有利的方式计算它的排名。输入格式:输...原创 2020-04-30 16:11:04 · 1049 阅读 · 0 评论 -
PTA 7-38 寻找大富翁(25 分)解法(C/C++)暴力快排/精准堆排 解法
7-38寻找大富翁(25分)胡润研究院的调查显示,截至2017年底,中国个人资产超过1亿元的高净值人群达15万人。假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁。输入格式:输入首先给出两个正整数N(≤10^6)和M(≤10),其中N为总人数,M为需要找出的大富翁数;接下来一行给出N个人的个人资产值,以百万元为单位,为不超过长整型范围的整数。数字间以空格分隔。输...原创 2020-04-29 16:29:07 · 1877 阅读 · 2 评论 -
汉诺塔的非递归实现(C语言版)从栈模拟递归(超详细原理讲解)到格雷码式编码改进(效率极高版)
7-17汉诺塔的非递归实现(25分)OJ平台链接(点击自动跳转,这里就不copy题目了):7-17汉诺塔的非递归实现(25分)目录递归解法(C语言)模拟递归解法,不使用递归函数(C语言,兼容C++)非递归解法,栈思想(C语言,兼容C++)非递归——压缩编码版本(执行效率几乎是系统递归版的3倍!)先我默认读者知道汉诺塔的规则和基本解法。无非就是将大问题分解成三步...原创 2020-03-08 01:47:34 · 9698 阅读 · 15 评论 -
1061 Dating (20 分)坑点大全
1061Dating(20分)点此跳转OJ网址此题与PAT乙级的1014福尔摩斯的约会 一样,只是以中文表述罢了,看不懂英文题的直接点题目超链接即可。题意分析:所有关键信息都是在两行对应位置相同字符(common)中取得的,所以第1,2行和3,4行分别同步遍历,第一步先判断字符是否相同,才进行下一步判断。一共有3个关键信息:周几:第1,2行的首个相同的大写字母"A...原创 2020-02-24 13:10:20 · 646 阅读 · 1 评论 -
1049 数列的片段和 (20 分) PAT乙级 Python3 6行解法
1049数列的片段和(20分)给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段。例如,给定数列 { 0.1, 0.2, 0.3, 0.4 },我们有 (0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0.4) (0.2) (0.2, 0.3) (0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4) 这 1...原创 2019-06-24 10:50:17 · 486 阅读 · 0 评论 -
PAT乙级 1056 组合数的和 (15 分) 巧妙解法 Python / C
1056 组合数的和 (15 分)给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。例如给定 2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。输入格式:输入在一行中先给出 N(1<N<10),随后给出 N 个不同的非 0 个位数字。数字间以空格分隔。输...原创 2019-06-25 20:12:49 · 595 阅读 · 0 评论 -
1052 卖个萌 (20 分) PTA服务器上Python3是无解的
1052卖个萌(20分)萌萌哒表情符号通常由“手”、“眼”、“口”三个主要部分组成。简单起见,我们假设一个表情符号是按下列格式输出的:[左手]([左眼][口][右眼])[右手]现给出可选用的符号集合,请你按用户的要求输出表情。输入格式:输入首先在前三行顺序对应给出手、眼、口的可选符号集。每个符号括在一对方括号[]内。题目保证每个集合都至少有一个符号,并不超过 10 ...原创 2019-06-25 17:34:16 · 924 阅读 · 7 评论 -
1025 反转链表 (25 分) PAT乙级 C++/Python版
https://pintia.cn/problem-sets/994805260223102976/problems/9948052961808711681025反转链表(25分)给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为 1→2→3→4→5→6,K为 3,则输出应该为 3→2→1→6→5→4;如果K为 4,则输出应该为 4...原创 2019-05-28 17:34:05 · 1238 阅读 · 4 评论 -
1019 数字黑洞 (20 分) 坑点 Python版本
https://pintia.cn/problem-sets/994805260223102976/problems/994805302786899968PAT (Basic Level) Practice (中文)1019数字黑洞(20分)给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到...原创 2019-05-15 16:39:09 · 845 阅读 · 0 评论 -
1014 福尔摩斯的约会 (20 分) Python和C++版本
1014福尔摩斯的约会(20分)大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1 对相同的大写英文字母(大小写有区分)是第 4 个字母D,代表星期四;第 2 对相同...原创 2019-05-14 18:59:49 · 392 阅读 · 0 评论