![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PAT (Basic Level) Practice
Yo3ngLau
Grazie
展开
-
1025 反转链表 (25分)
1025 反转链表 (25分)AC代码#include <iostream>#include <cstdio>using namespace std;struct node{ int cur, value, nxt;}nodes[100010], ret[100010];int main(){ int ori, n, k, x, pos = 0...原创 2019-12-20 09:09:05 · 65 阅读 · 1 评论 -
1075 链表元素分类 (25分)
1075 链表元素分类 (25分)AC代码#include <iostream>#include <cstdio>using namespace std;struct node{ int cur, value, nxt;}nodes[100010], tmp[100010], tmp2[100010], tmp3[100010];int main(){...原创 2019-12-19 18:49:08 · 70 阅读 · 1 评论 -
1026 程序运行时间 (15 分)
1026 程序运行时间 (15 分)要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间。这个时间单位是 clock tick,即“时钟打点”。同时还有一个常数 CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数 f 的运行时间,我们只要在调用 f 之前先调...原创 2019-04-12 16:23:59 · 72 阅读 · 0 评论 -
1037 在霍格沃茨找零钱 (20 分)
1037 在霍格沃茨找零钱 (20 分)如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易。”现在,给定哈利应付的价钱 P 和他实付的钱 A,你的任务是写一个程序来计算他应该被找的零钱。输入格式:输入在 1 行中分别给出 P 和 A,格式为 Galleon....原创 2019-04-11 19:05:16 · 79 阅读 · 0 评论 -
1034 有理数四则运算 (20 分)
1034 有理数四则运算 (20 分)本题要求编写程序,计算 2 个有理数的和、差、积、商。输入格式:输入在一行中按照 a1/b1 a2/b2 的格式给出两个分数形式的有理数,其中分子和分母全是整型范围内的整数,负号只可能出现在分子前,分母不为 0。输出格式:分别在 4 行中按照 有理数1 运算符 有理数2 = 结果 的格式顺序输出 2 个有理数的和、差、积、商。注意输出的每个有理数必须...原创 2019-04-11 18:42:35 · 82 阅读 · 0 评论 -
1054 求平均值 (20 分)
1054 求平均值 (20 分)本题的基本要求非常简单:给定 N 个实数,计算它们的平均值。但复杂的是有些输入数据可能是非法的。一个“合法”的输入是 [−1000,1000] 区间内的实数,并且最多精确到小数点后 2 位。当你计算平均值的时候,不能把那些非法的数据算在内。输入格式:输入第一行给出正整数 N(≤100)。随后一行给出 N 个实数,数字间以一个空格分隔。输出格式:对每个非法输...原创 2019-04-08 12:06:01 · 354 阅读 · 0 评论 -
1036 跟奥巴马一起编程 (15 分)
1036 跟奥巴马一起编程 (15 分)美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!输入格式:输入在一行中给出正方形边长 N(3≤N≤20)和组成正方形边的某种字符 C,间隔一个空格。输出格式:输出由给定...原创 2019-04-08 11:06:05 · 67 阅读 · 0 评论 -
1032 挖掘机技术哪家强 (20 分)
1032 挖掘机技术哪家强 (20 分)为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。输入格式:输入在第 1 行给出不超过 105的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从 1 开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。输出格式:在一行中给出总得分...原创 2019-04-08 11:06:12 · 60 阅读 · 0 评论 -
1012 数字分类 (20 分)
1012 数字分类 (20 分)输入样例 1:13 1 2 3 4 5 6 7 8 9 10 20 16 18输出样例 1:30 11 2 9.7 9输入样例 2:8 1 2 4 5 6 7 9 16输出样例 2:N 11 2 N 9AC代码#include <iostream>#include <vector>using namespace st...原创 2019-04-08 10:53:28 · 121 阅读 · 0 评论 -
1001 害死人不偿命的(3n+1)猜想 (15 分)
1001 害死人不偿命的(3n+1)猜想 (15 分)卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+...原创 2019-04-08 10:43:47 · 70 阅读 · 0 评论 -
1013 数素数 (20 分
1013 数素数 (20 分)AC代码#include <iostream>#include <cmath>using namespace std;int isPrime(int x);int main() { int M, N; cin >> M >> N; int i = 2, cnt = 0; while (cnt != ...原创 2019-04-08 10:40:46 · 91 阅读 · 0 评论 -
1021 个位数统计 (15 分)
1021 个位数统计 (15 分)输入样例:100311输出样例:0:21:33:1AC代码#include <stdio.h>int main(){ int digit[1001] = { 0 }; int i; char c; while ((c = getchar()) != '\n') if (c >= '0' &...原创 2019-04-08 10:36:01 · 167 阅读 · 0 评论 -
1033 旧键盘打字 (20 分)
1033 旧键盘打字 (20 分)旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在 2 行中分别给出坏掉的那些键、以及应该要输入的文字。其中对应英文字母的坏键以大写给出,每段文字是不超过 105个字符的串。可用的字符包括字母 [a-z, A-Z]、数字 0-9、以及下划线 _(代表空格)...原创 2019-04-11 19:05:28 · 66 阅读 · 0 评论 -
1051 复数乘法 (15 分)
1051 复数乘法 (15 分)输入样例:2.3 3.5 5.2 0.4输出样例:-8.68-8.23iAC代码#include <iostream>#include <cmath>using namespace std;int main() { double R1, P1, R2, P2; cin >> R1 >> P1 &...原创 2019-04-11 11:48:31 · 94 阅读 · 0 评论 -
1039 到底买不买 (20 分)
1039 到底买不买 (20 分)小红想买些珠子做一串自己喜欢的珠串。卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖。于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要的珠子?如果是,那么告诉她有多少多余的珠子;如果不是,那么告诉她缺了多少珠子。为方便起见,我们用[0-9]、[a-z]、[A-Z]范围内的字符来表示颜色。例如在图1中,第3串是小红想做的珠串;那么第1串可...原创 2019-04-07 16:55:10 · 65 阅读 · 0 评论 -
1048 数字加密 (20 分)
1048 数字加密 (20 分)本题要求实现一种数字加密方法。首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余——这里用 J 代表 10、Q 代表 11、K 代表 12;对偶数位,用 B 的数字减去 A 的数字,若结果为负数,则再加 10。这里令个位为第 1 位。输入格式:输入在一行中依次给出...原创 2019-04-11 20:04:45 · 67 阅读 · 0 评论 -
1020 月饼 (25 分)
1020 月饼 (25 分)月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们...原创 2019-04-12 14:52:17 · 216 阅读 · 0 评论 -
1060 爱丁顿数 (25 分)
1060 爱丁顿数 (25 分)题目入口:https://pintia.cn/problem-sets/994805260223102976/problems/994805269312159744AC代码#include <iostream>#include <cstdio>#include <algorithm>#include <cstri...原创 2019-10-05 09:22:10 · 63 阅读 · 0 评论 -
1005 继续(3n+1)猜想 (25 分)
1005 继续(3n+1)猜想 (25 分)题目入口:https://pintia.cn/problem-sets/994805260223102976/problems/994805320306507776AC代码#include <iostream>#include <cstdio>#include <algorithm>#include <...原创 2019-10-04 09:12:42 · 89 阅读 · 0 评论 -
1085 PAT单位排行 (25 分)
1085 PAT单位排行 (25 分)题目入口:https://pintia.cn/problem-sets/994805260223102976/problems/994805260353126400AC代码#include <iostream>#include <cstdio>#include <algorithm>#include <cs...原创 2019-10-04 09:11:23 · 91 阅读 · 0 评论 -
1050 螺旋矩阵 (25 分)
1050 螺旋矩阵 (25 分)题目入口:https://pintia.cn/problem-sets/994805260223102976/problems/994805275146436608写在前面补习一下for循环和模拟AC代码#include<iostream>#include<cstdio>#include<algorithm>#i...原创 2019-09-11 21:41:14 · 64 阅读 · 0 评论 -
1044 火星数字 (20 分)
1044 火星数字 (20 分)火星人是以 13 进制计数的:地球人的 0 被火星人称为 tret。地球人数字 1 到 12 的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。火星人将进位以后的 12 个高位数字分别称为:tam, hel, maa, huh, tou, kes, hei, elo, syy...原创 2019-04-09 18:22:41 · 165 阅读 · 0 评论 -
1078 字符串压缩与解压 (20 分)
1078 字符串压缩与解压 (20 分)文本压缩有很多种方法,这里我们只考虑最简单的一种:把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示。例如 ccccc 就用 5c 来表示。如果字符没有重复,就原样输出。例如 aba 压缩后仍然是 aba。解压方法就是反过来,把形如 5c 这样的表示恢复为 ccccc。本题需要你根据压缩或解压的要求,对给定字符串进行处理。这里我...原创 2019-04-12 18:06:23 · 123 阅读 · 0 评论 -
1017 A除以B (20 分)
1017 A除以B (20 分)本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。输入格式:输入在一行中依次给出 A 和 B,中间以 1 空格分隔。输出格式:在一行中依次输出 Q 和 R,中间以 1 空格分隔。输入样例:123456789050987654321 7输出样例:17636...原创 2019-04-09 15:44:04 · 101 阅读 · 0 评论 -
1046 划拳 (15 分)
1046 划拳 (15 分)划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。下面给出甲、乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒。输入格式:输入第一行先给出一个正整数 N(≤100),随后 N 行...原创 2019-04-09 15:44:12 · 525 阅读 · 0 评论 -
1016 部分A+B (15 分)
1016 部分A+B (15 分)输入样例 1:3862767 6 13530293 3输出样例 1:399输入样例 2:3862767 1 13530293 8输出样例 2:0AC代码#include <iostream>#include <string>using namespace std;int SumAandB(string strA,...原创 2019-04-09 15:44:20 · 167 阅读 · 0 评论 -
1053 住房空置率 (20 分)
1053 住房空置率 (20 分)在不打扰居民的前提下,统计住房空置率的一种方法是根据每户用电量的连续变化规律进行判断。判断方法如下:在观察期内,若存在超过一半的日子用电量低于某给定的阈值 e,则该住房为“可能空置”;若观察期超过某给定阈值 D 天,且满足上一个条件,则该住房为“空置”。现给定某居民区的住户用电量数据,请你统计“可能空置”的比率和“空置”比率,即以上两种状态的住房占居民区住...原创 2019-04-12 16:56:55 · 59 阅读 · 0 评论 -
1076 Wifi密码 (15 分)
1076 Wifi密码 (15 分)下面是微博上流传的一张照片:“各位亲爱的同学们,鉴于大家有时需要使用 wifi,又怕耽误亲们的学习,现将 wifi 密码设置为下列数学题答案:A-1;B-2;C-3;D-4;请同学们自己作答,每两日一换。谢谢合作!!~”—— 老师们为了促进学生学习也是拼了…… 本题就要求你写程序把一系列题目的答案按照卷子上给出的对应关系翻译成 wifi 的密码。这里简单假设每...原创 2019-04-12 16:23:42 · 150 阅读 · 0 评论 -
1056 组合数的和 (15 分)
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-04-12 16:23:51 · 93 阅读 · 0 评论 -
1062 最简分数 (20 分)
1062 最简分数 (20 分)输入样例:7/18 13/20 12输出样例:5/12 7/12AC代码#include <iostream>#include <cstdio>using namespace std;int GCD(int x, int y); //得到x和y的最大公约数int LCM(int x, int y); //得到x和y的最小...原创 2019-04-07 12:09:05 · 168 阅读 · 0 评论 -
1063 计算谱半径 (20 分)
1063 计算谱半径 (20 分)输入样例:50 12 0-1 03 30 -3输出样例:4.24AC代码#include <iostream>#include <cmath>#include <cstdio>using namespace std;int main() { int N, a, b, Max; cin >...原创 2019-04-10 22:46:24 · 94 阅读 · 0 评论 -
1092 最好吃的月饼 (20 分)
1092 最好吃的月饼 (20 分)若想评比出一种“最好吃”的月饼,那势必在吃货界引发一场腥风血雨…… 在这里我们用数字说话,给出全国各地各种月饼的销量,要求你从中找出销量冠军,认定为最好吃的月饼。输入格式:输入首先给出两个正整数 N(≤1000)和 M(≤100),分别为月饼的种类数(于是默认月饼种类从 1 到 N 编号)和参与统计的城市数量。接下来 M 行,每行给出 N 个非负整数(均...原创 2019-04-10 22:46:33 · 241 阅读 · 0 评论 -
1059 C语言竞赛 (20 分)
1059 C语言竞赛 (20 分)C 语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛。既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽:0、冠军将赢得一份“神秘大奖”(比如很巨大的一本学生研究论文集……)。1、排名为素数的学生将赢得最好的奖品 —— 小黄人玩偶!2、其他人将得到巧克力。给定比赛的最终排名以及一系列参赛者的 ID,你要给出这些参赛者应该获得的奖品。输入格式:输入第一行...原创 2019-04-03 22:55:42 · 134 阅读 · 0 评论 -
1069 微博转发抽奖 (20 分)
1069 微博转发抽奖 (20 分)小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包。请你编写程序帮助他确定中奖名单。输入格式:输入第一行给出三个正整数 M(≤ 1000)、N 和 S,分别是转发的总量、小明决定的中奖间隔、以及第一位中奖者的序号(编号从 1 开始)。随后 M 行,顺序给出转发微博的网友的昵称(不超过 20 个字符、不...原创 2019-04-03 22:53:15 · 229 阅读 · 0 评论 -
1004 成绩排名 (20 分)
1004 成绩排名 (20 分)读入 n(&amp;amp;amp;amp;amp;amp;amp;amp;gt;0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。输入格式:每个测试输入包含 1 个测试用例,格式为第 1 行:正整数 n第 2 行:第 1 个学生的姓名 学号 成绩第 3 行:第 2 个学生的姓名 学号 成绩… … …第 n+1 行:第 n 个学生的姓名 学号 成绩其中姓名和学号均为不超过 10 个字符的...原创 2019-01-25 11:51:16 · 81 阅读 · 0 评论 -
1079 延迟的回文数 (20 分)
1079 延迟的回文数 (20 分)输入格式:输入在一行中给出一个不超过1000位的正整数。输出格式:对给定的整数,一行一行输出其变出回文数的过程。每行格式如下A + B = C其中 A 是原始的数字,B 是 A 的逆转数,C 是它们的和。A 从输入的整数开始。重复操作直到 C 在 10 步以内变成回文数,这时在一行中输出 C is a palindromic number.;或者如...原创 2019-01-24 22:57:32 · 632 阅读 · 0 评论 -
1064 朋友数 (20 分)
1064 朋友数 (20 分)如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”。例如 123 和 51 就是朋友数,因为 1+2+3 = 5+1 = 6,而 6 就是它们的朋友证号。给定一些整数,要求你统计一下它们中有多少个不同的朋友证号。输入格式:输入第一行给出正整数 N。随后一行给出 N 个正整数,数字间以空格分隔。题目保证所有数字小于 10^...原创 2019-01-24 19:43:24 · 126 阅读 · 0 评论 -
1093 字符串A+B (20 分)
1093 字符串A+B (20 分)技巧原创 2019-01-24 13:42:10 · 192 阅读 · 0 评论 -
1094 谷歌的招聘 (20 分)
1094 谷歌的招聘 (20 分)2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘。内容超级简单,就是一个以 .com 结尾的网址,而前面的网址是一个 10 位素数,这个素数是自然常数 e 中最早出现的 10 位连续数字。能找出这个素数的人,就可以通过访问谷歌的这个网站进入招聘流程的下一步。自然常数 e 是一个著名的超越数,前面若干位写出来是这样的...原创 2019-01-24 13:48:56 · 268 阅读 · 0 评论 -
1007 素数对猜想 (20 分)
1007 素数对猜想 (20 分)输入格式:输入在一行给出正整数N。输出格式:在一行中输出不超过N的满足猜想的素数对的个数。输入样例:20输出样例:4AC代码#include &lt;iostream&gt;#include &lt;cmath&gt;int isPrime(int x);int main(){ using namespace std; ...原创 2019-01-24 14:42:38 · 114 阅读 · 0 评论