![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法_PTA&PAT
pinta.cn网站上一些题目的解题思路
AYO_YO
这个作者很懒,什么都没留下…
展开
-
7-2 找奇葩 (20分) Python
在一个长度为 n 的正整数序列中,所有的奇数都出现了偶数次,只有一个奇葩奇数出现了奇数次。你的任务就是找出这个奇葩。输入格式:输入首先在第一行给出一个正整数 n(≤104),随后一行给出 n 个满足题面描述的正整数。每个数值不超过 105,数字间以空格分隔。输出格式:在一行中输出那个奇葩数。题目保证这个奇葩是存在的。输入样例:1223 16 87 233 87 16 87 233 23 87 233 16输出样例:233作者单位代码长度限制时间限制内存限制原创 2020-12-12 11:25:03 · 472 阅读 · 3 评论 -
7-1 祖传好运 (15分) Python
我们首先定义 0 到 9 都是好运数,然后从某个好运数开始,持续在其右边添加数字,形成新的数字。我们称一个大于 9 的数字 N 具有祖传好运,如果它是由某个好运数添加了一个个位数字得到的,并且它能被自己的位数整除。例如 123 就是一个祖传好运数。首先因为 1 是一个好运数的老祖宗,添加了 2 以后,形成的 12 能被其位数 2 (即 12 是一个 2 位数)整除,所以 12 是一个祖传好运数;在 12 后面添加了 3 以后,形成的 123 能被其位数 3 整除,所以 123 是一个祖传好运数。本题就请原创 2020-12-12 10:56:42 · 1753 阅读 · 17 评论 -
PAT乙级 1094 谷歌的招聘 (20分) Python
2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘。内容超级简单,就是一个以 .com 结尾的网址,而前面的网址是一个 10 位素数,这个素数是自然常数 e 中最早出现的 10 位连续数字。能找出这个素数的人,就可以通过访问谷歌的这个网站进入招聘流程的下一步。自然常数 e 是一个著名的超越数,前面若干位写出来是这样的:e = 2.7182818284590452353602874713526624977572470936999595749669676277240原创 2020-12-15 21:28:50 · 287 阅读 · 0 评论 -
1093 字符串A+B (20分) Python
题目链接:1093 字符串A+B (20分)给定两个字符串 A 和 B,本题要求你输出 A+B,即两个字符串的并集。要求先输出 A,再输出 B,但重复的字符必须被剔除。输入格式:输入在两行中分别给出 A 和 B,均为长度不超过 106 的、由可见 ASCII 字符 (即码值为32~126)和空格组成的、由回车标识结束的非空字符串。输出格式:在一行中输出题面要求的 A 和 B 的和。输入样例:This is a sample testto show you_How it works原创 2020-12-13 21:11:24 · 360 阅读 · 0 评论 -
1041 考试座位号 (15分) Python
题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805281567916032每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。输入格式:输入第一行给出一个原创 2020-12-10 18:56:09 · 283 阅读 · 1 评论 -
7-3 逆序的三位数 (10分) Python
题目链接:https://pintia.cn/problem-sets/14/problems/783程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。输入格式:每个测试是一个3位的正整数。输出格式:输出按位逆序的数。输入样例:123输出样例:321解题思路:这一题用Python去写就相当容易了,先说一下我的思路:读取一个字符串,调用.strip('0')删除首尾的0,然后[::-1]翻转字符串原创 2020-11-19 16:12:35 · 513 阅读 · 0 评论 -
7-2 然后是几点 (15分) Python
题目链接:https://pintia.cn/problem-sets/14/problems/782有时候人们用四位数字表示一个时间,比如 1106 表示 11 点零 6 分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,例如 5 点 30 分表示为 530;0 点 30 分表示为 030。注意,第二个数字表示的分钟数可能超过原创 2020-11-19 15:59:24 · 1276 阅读 · 0 评论 -
7-22 龟兔赛跑 (20分) Python
题目链接:https://pintia.cn/problem-sets/14/problems/802乌龟与兔子进行赛跑,跑场是一个矩型跑道,跑道边可以随地进行休息。乌龟每分钟可以前进3米,兔子每分钟前进9米;兔子嫌乌龟跑得慢,觉得肯定能跑赢乌龟,于是,每跑10分钟回头看一下乌龟,若发现自己超过乌龟,就在路边休息,每次休息30分钟,否则继续跑10分钟;而乌龟非常努力,一直跑,不休息。假定乌龟与兔子在同一起点同一时刻开始起跑,请问T分钟后乌龟和兔子谁跑得快?输入格式:输入在一行中给出比赛时间T(分钟)。原创 2020-11-18 22:00:43 · 1145 阅读 · 0 评论 -
7-26 单词长度 (15分) python
题目链接:https://pintia.cn/problem-sets/14/problems/806你的程序要读入一行文本,其中以空格分隔为若干个单词,以.结束。你要输出每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如it’s算一个单词,长度为4。注意,行中可能出现连续的空格;最后的.不计算在内。输入格式:输入在一行中给出一行文本,以.结束提示:用scanf("%c",…);来读入一个字符,直到读到.为止。输出格式:在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末原创 2020-11-18 21:41:12 · 586 阅读 · 0 评论