
PAT题目集合
空想昼夜
真的渣..
展开
-
L3-014 周游世界 (30 分) Dijkstra+堆优化+链式前向星
周游世界是件浪漫事,但规划旅行路线就不一定了…… 全世界有成千上万条航线、铁路线、大巴线,令人眼花缭乱。所以旅行社会选择部分运输公司组成联盟,每家公司提供一条线路,然后帮助客户规划由联盟内企业支持的旅行路线。本题就要求你帮旅行社实现一个自动规划路线的程序,使得对任何给定的起点和终点,可以找出最顺畅的路线。所谓“最顺畅”,首先是指中途经停站最少;如果经停站一样多,则取需要换乘线路次数最少的路线。输...原创 2019-03-28 19:45:23 · 938 阅读 · 0 评论 -
PAT L1 048 矩阵A乘以B
题目描述:给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra行、Ca列,B有Rb行、Cb列,则只有Ca与Rb相等时,两个矩阵才能相乘。输入格式:输入先后给出两个矩阵A和B。对于每个矩阵,首先在一行中给出其行数R和列数C,随后R行,每行给出C个整数,以1个空格分隔,且行首尾没有多余的空格。输入保证两个矩阵的R和C都是正数,并且所有整...原创 2018-03-11 11:20:48 · 388 阅读 · 0 评论 -
PAT L1 047 装睡
题目描述:你永远叫不醒一个装睡的人 —— 但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次,脉搏是每分钟50-70次。下面给定一系列人的呼吸频率与脉搏,请你找出他们中间有可能在装睡的人,即至少一项指标不在正常范围内的人。输入格式:输入在第一行给出一个正整数N(<= 10)。随后N行,每行给出一个人的名字(仅由英文字母...原创 2018-03-11 11:09:31 · 793 阅读 · 0 评论 -
PAT L1 046 整除光棍
题目描述:这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如,111111就可以被13整除。 现在,你的程序要读入一个整数x,这个整数一定是奇数并且不以5结尾。然后,经过计算,输出两个数字:第一个数字s,表示x乘以s是一个光棍,第二个数字n是这个光棍的位数。这样的解当然不是唯一的,题目要求你输...原创 2018-03-11 11:07:55 · 154 阅读 · 0 评论 -
PAT L1 045 宇宙无敌大招呼
题目描述:据说所有程序员学习的第一个程序都是在屏幕上输出一句“Hello World”,跟这个世界打个招呼。作为天梯赛中的程序员,你写的程序得高级一点,要能跟任意指定的星球打招呼。输入格式:输入在第一行给出一个星球的名字S,是一个由不超过7个英文字母组成的单词,以回车结束。输出格式:在一行中输出“Hello S”,跟输入的S星球打个招呼。输入样例:Mars输出样例:H...原创 2018-03-11 10:56:38 · 828 阅读 · 0 评论 -
PAT L1 044 稳赢
题目描述:大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:现要求你编写一个稳赢不输的程序,根据对方的出招,给出对应的赢招。但是!为了不让对方输得太惨,你需要每隔K次就让一个平局。输入格式:输入首先在第一行给出正整数K(<=10),即平局间隔的次数。随后每行给出对方的一次出招:“ChuiZi”代表“锤子”、“JianDao”代表“剪刀”、“Bu”代表“...原创 2018-03-11 10:53:33 · 616 阅读 · 0 评论 -
PAT L1 043 阅览室
题目描述:天梯图书阅览室请你编写一个简单的图书借阅统计程序。当读者借书时,管理员输入书号并按下S键,程序开始计时;当读者还书时,管理员输入书号并按下E键,程序结束计时。书号为不超过1000的正整数。当管理员将0作为书号输入时,表示一天工作结束,你的程序应输出当天的读者借书次数和平均阅读时间。注意:由于线路偶尔会有故障,可能出现不完整的纪录,即只有S没有E,或者只有E没有S的纪录,系统应能自...原创 2018-03-11 10:46:16 · 520 阅读 · 0 评论 -
PAT L1 042 日期格式化
题目描述:世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。下面请你写个程序,自动把读入的美国格式的日期改写成中国习惯的日期。输入格式:输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。输出格式:在一行中按照“yyyy-mm-dd”的格式给出年、月、日。输入样例...原创 2018-03-11 10:27:07 · 592 阅读 · 0 评论 -
PAT L1 041 寻找250
题目描述:对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。输入格式:输入在一行中给出不知道多少个绝对值不超过1000的整数,其中保证至少存在一个“250”。输出格式:在一行中输出第一次出现的“250”是对方扔过来的第几个数字(计数从1开始)。题目保证输出的数字在整型范围内。输入样例:888 666 123 -233 250...原创 2018-03-11 10:24:05 · 7699 阅读 · 0 评论 -
PAT L1 040 最佳情侣身高差
题目描述:专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09=(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。输入格式:输入第一行给出正整数N(<=10),为前来查询的用户数。随后N行,每行按照“性别 身高”的格式给出前来查询的用户的性别和身高,其...原创 2018-03-11 10:21:03 · 443 阅读 · 0 评论 -
PAT L1 039 古风排版
题目描述:中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。输入格式:输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。输出格式:按古风格式排版给定的字符串,每列N个字符(除了最后一列可能不足N个)输入样例:4This is a test case输出样例:as...原创 2018-03-11 10:18:49 · 319 阅读 · 0 评论 -
PAT L1 038 新世界
题目描述:这道超级简单的题目没有任何输入。你只需要在第一行中输出程序员钦定名言“Hello World”,并且在第二行中输出更新版的“Hello New World”就可以了。又是一个新的循环,新的一天,新的一周,还有一个崭新的自己#include<cstdio>#include<cstdlib>#include<cmath>#inclu...原创 2018-03-11 09:56:58 · 1103 阅读 · 0 评论 -
PAT L1 037 A除以B
题目描述:真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果。输入格式:输入在第一行给出两个整数A和B(-100 <= A, B, <= 100),数字间以空格分隔。输出格式:在一行中输出结果:如果分母是正数,则输出“A/B=商”;如果分母是负数,则要用括号把分母括起来输出;如果分母为零,则输出的商应为“Error”...原创 2018-03-11 09:54:02 · 387 阅读 · 0 评论 -
PAT L1 036 A乘以B
题目描述:看我没骗你吧 —— 这是一道你可以在10秒内完成的题:给定两个绝对值不超过100的整数A和B,输出A乘以B的值。输入格式:输入在第一行给出两个整数A和B(-100 <= A, B, <= 100),数字间以空格分隔。输出格式:在一行中输出A乘以B的值。输入样例:-8 13输出样例:-104a+b换成了a*b核心代码如下:int ...原创 2018-03-11 09:51:22 · 875 阅读 · 0 评论 -
PAT L1 035 情人节
题目描述:以上是朋友圈中一奇葩贴:“2月14情人节了,我决定造福大家。第2个赞和第14个赞的,我介绍你俩认识…………咱三吃饭…你俩请…”。现给出此贴下点赞的朋友名单,请你找出那两位要请客的倒霉蛋。输入格式:输入按照点赞的先后顺序给出不知道多少个点赞的人名,每个人名占一行,为不超过10个英文字母的非空单词,以回车结束。一个英文句点“.”标志输入的结束,这个符号不算在点赞名单里。输出格...原创 2018-03-11 09:49:46 · 254 阅读 · 0 评论 -
PAT 题解合集(并不全)(逃
前几天一冲动把L1的所有题都写了一遍题解,emmmm有些题还是挺认真写的,但是自己实力毕竟还是菜的抠脚啊,又是大二才进acm,所以有些题解可能写的并不是很好,但是既然已经写了这么多了,L2肯定也是要写的,目前L2做了15道,还有9道(不是按顺序做的)剩下的大概都是图和树的那种数据结构的题了,为了防止会重复写题解(蠢),所以还是另开一个记录一下吧标蓝色的大概是写了题解的,一天补两道以前的,然后写...原创 2018-03-12 16:51:37 · 456 阅读 · 0 评论 -
PAT L2 021 点赞狂魔
题目描述:微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。然而有这么一种人,他们会通过给自己看到的一切内容点赞来狂刷存在感,这种人就被称为“点赞狂魔”。他们点赞的标签非常分散,无法体现出明显的特性。本题就要求你写个程序,通过统计每个人点赞的不同标签的数量,找出前3名点赞狂魔。输入格式:输入在第一行...原创 2018-03-12 17:05:40 · 646 阅读 · 0 评论 -
L3-011 直捣黄龙 (30 分) Dijkstra+前向星+堆优化+map映射
本题是一部战争大片 —— 你需要从己方大本营出发,一路攻城略地杀到敌方大本营。首先时间就是生命,所以你必须选择合适的路径,以最快的速度占领敌方大本营。当这样的路径不唯一时,要求选择可以沿途解放最多城镇的路径。若这样的路径也不唯一,则选择可以有效杀伤最多敌军的路径。输入格式:输入第一行给出 2 个正整数 N(2 ≤ N ≤ 200,城镇总数)和 K(城镇间道路条数),以及己方大本营和敌方大本营的...原创 2019-03-27 17:21:08 · 452 阅读 · 3 评论 -
L3-008 喊山 (30 分)
喊山,是人双手围在嘴边成喇叭状,对着远方高山发出“喂—喂喂—喂喂喂……”的呼唤。呼唤声通过空气的传递,回荡于深谷之间,传送到人们耳中,发出约定俗成的“讯号”,达到声讯传递交流的目的。原来它是彝族先民用来求援呼救的“讯号”,慢慢地人们在生活实践中发现了它的实用价值,便把它作为一种交流工具世代传袭使用。(图文摘自:http://news.xrxxw.com/newsshow-8018.html)一...原创 2019-03-27 17:08:24 · 1553 阅读 · 0 评论 -
L3-007 天梯地图 (30 分) 两遍 Dijkstra+堆优化
本题要求你实现一个天梯赛专属在线地图,队员输入自己学校所在地和赛场地点后,该地图应该推荐两条路线:一条是最快到达路线;一条是最短距离的路线。题目保证对任意的查询请求,地图上都至少存在一条可达路线。输入格式:输入在第一行给出两个正整数N(2 ≤ N ≤ 500)和M,分别为地图中所有标记地点的个数和连接地点的道路条数。随后M行,每行按如下格式给出一条道路的信息:V1 V2 one-way le...原创 2019-03-27 17:00:12 · 550 阅读 · 0 评论 -
L3-005 垃圾箱分布 (30 分) 最短路
大家倒垃圾的时候,都希望垃圾箱距离自己比较近,但是谁都不愿意守着垃圾箱住。所以垃圾箱的位置必须选在到所有居民点的最短距离最长的地方,同时还要保证每个居民点都在距离它一个不太远的范围内。现给定一个居民区的地图,以及若干垃圾箱的候选地点,请你推荐最合适的地点。如果解不唯一,则输出到所有居民点的平均距离最短的那个解。如果这样的解还是不唯一,则输出编号最小的地点。输入格式:输入第一行给出4个正整数:...原创 2019-03-27 10:30:32 · 522 阅读 · 0 评论 -
L3-004 肿瘤诊断 (30 分) bfs+连通块个数
在诊断肿瘤疾病时,计算肿瘤体积是很重要的一环。给定病灶扫描切片中标注出的疑似肿瘤区域,请你计算肿瘤的体积。输入格式:输入第一行给出4个正整数:M、N、L、T,其中M和N是每张切片的尺寸(即每张切片是一个M×N的像素矩阵。最大分辨率是1286×128);L(≤60)是切片的张数;T是一个整数阈值(若疑似肿瘤的连通体体积小于T,则该小块忽略不计)。最后给出L张切片。每张用一个由0和1组成的M×...原创 2019-03-27 09:23:35 · 734 阅读 · 3 评论 -
L3-003 社交集群 (30 分) dfs
当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友。一个“社交集群”是指部分兴趣爱好相同的人的集合。你需要找出所有的社交集群。输入格式:输入在第一行给出一个正整数 N(≤1000),为社交网络平台注册的所有用户的人数。于是这些人从 1 到 N 编号。随后 N 行,每行按以下格式给出一个人的兴趣爱好列表:Ki: hi[1] hi[2] … hi[...原创 2019-03-27 09:04:44 · 532 阅读 · 0 评论 -
L3-002 特殊堆栈 (30 分) vector水过==
堆栈是一种经典的后进先出的线性结构,相关的操作主要有“入栈”(在堆栈顶插入一个元素)和“出栈”(将栈顶元素返回并从堆栈中删除)。本题要求你实现另一个附加的操作:“取中值”——即返回所有堆栈中元素键值的中值。给定 N 个元素,如果 N 是偶数,则中值定义为第 N/2 小元;若是奇数,则为第 (N+1)/2 小元。输入格式:输入的第一行是正整数 N(≤105 )。随后 N 行,每行给出一...原创 2019-03-27 08:41:44 · 686 阅读 · 0 评论 -
L3-001 凑零钱 (30 分) 动态规划+vector记录路径
韩梅梅喜欢满宇宙到处逛街。现在她逛到了一家火星店里,发现这家店有个特别的规矩:你可以用任何星球的硬币付钱,但是绝不找零,当然也不能欠债。韩梅梅手边有 104 枚来自各个星球的硬币,需要请你帮她盘算一下,是否可能精确凑出要付的款额。输入格式:输入第一行给出两个正整数:N(≤104 )是硬币的总个数,M(≤102 )是韩梅梅要付的款额。第二行给出 N 枚硬币的正整数...原创 2019-03-27 07:44:27 · 961 阅读 · 0 评论 -
L2-003 月饼 排序
月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是卖出全部 1...原创 2019-03-25 08:46:22 · 228 阅读 · 1 评论 -
L2-002 链表去重 排序
给定一个带整数键值的链表 L,你需要把其中绝对值重复的键值结点删掉。即对每个键值 K,只有第一个绝对值等于 K 的结点被保留。同时,所有被删除的结点须被保存在另一个链表上。例如给定 L 为 21→-15→-15→-7→15,你需要输出去重后的链表 21→-15→-7,还有被删除的链表 -15→15。输入格式:输入在第一行给出 L 的第一个结点的地址和一个正整数 N(≤105 ,为结点...原创 2019-03-25 08:37:57 · 196 阅读 · 0 评论 -
L2-001 紧急救援 Dijkstra + 堆优化
作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。输入格式:输入第一行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编...原创 2019-03-24 20:53:20 · 460 阅读 · 0 评论 -
PAT L1 050 倒数第N个字符串 (递归/模拟)
给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,序列为 { aaa, aab, aac, ..., aaz, aba, abb, ..., abz, ..., zzz }。这个序列的倒数第27个字符串就是 zyz。对于任意给定的 L,本题要求你给出对应序列倒数第 N 个字符串。输入格式:...原创 2018-04-01 16:38:49 · 275 阅读 · 0 评论 -
PAT L2 016 愿天下有情人都是失散多年的兄妹
这个题今天上午卡了一上午,结果是数组开小了,居然提示的是答案错误,唉题目描述:呵呵。大家都知道五服以内不得通婚,即两个人最近的共同祖先如果在五代以内(即本人、父母、祖父母、曾祖父母、高祖父母)则不可通婚。本题就请你帮助一对有情人判断一下,他们究竟是否可以成婚?输入格式:输入第一行给出一个正整数N(2 <= N <= 104),随后N行,每行按以下格式给出一个人的信息:...原创 2018-03-13 13:32:07 · 321 阅读 · 0 评论 -
PAT L2 023 图着色问题
理论上来说我应该先写22,因为22已经做了,但是这个题坑的我真的是没话说 如果有人点进来,我猜你大概是没考虑到着色所用颜色小于所给颜色的情况,这种情况不能算Yes………. 我在这个地方wa了10发,受不了了搜了下题解才知道题目描述:图着色问题是一个著名的NP完全问题。给定无向图 G = (V, E),问可否用K种颜色为V中的每一个顶点分配一种颜色,使得不会有两个相邻顶点具有同一种颜色?...原创 2018-03-12 17:17:11 · 348 阅读 · 0 评论 -
PAT L1 034 点赞
题目描述:微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特性。输入格式:输入在第一行给出一个正整数N(<=1000),是该用户点赞的博文数量。随后N行,每行给出一篇被其点赞的博文的特性描述,格式为“K F1 ... FK”,其中 ...原创 2018-03-11 09:47:40 · 243 阅读 · 0 评论 -
PAT L1 033 出生年
题目描述:以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不相同的年份。”也就是说,直到2013年才达到“4个数字都不相同”的要求。本题请你根据要求,自动填充“我出生于y年,直到x岁才遇到n个数字都不相同的年份”这句话。输入格式:输入在一行中给出出生年份y和目标年份中不同数字的个数n,其中y在[1, 3000]之间,n可以是2、或3、或4。注意不足4位的年份要...原创 2018-03-11 09:36:07 · 510 阅读 · 0 评论 -
PAT L1 032 Left-pad
题目描述:根据新浪微博上的消息,有一位开发者不满NPM(Node Package Manager)的做法,收回了自己的开源代码,其中包括一个叫left-pad的模块,就是这个模块把javascript里面的React/Babel干瘫痪了。这是个什么样的模块?就是在字符串前填充一些东西到一定的长度。例如用“*”去填充字符串“GPLT”,使之长度为10,调用left-pad的结果就应该是“****...原创 2018-03-11 09:15:21 · 204 阅读 · 0 评论 -
PAT L1 015 跟奥巴马一起画方块
心累 csdn的验证登录是真的恶心题目描述:美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!输入格式:输入在一行中给出正方形边长N(3<=N<=21)和组成正方形边的某种字符C,间隔一个空格...原创 2018-03-10 14:02:30 · 1671 阅读 · 0 评论 -
PAT L1 014 简单题
题目信息:这次真的没骗你 —— 这道超级简单的题目没有任何输入。你只需要在一行中输出事实:“This is a simple problem.”就可以了。emm和L1 001 类似代码如下:#include<cstdio>#include<cstdlib>#include<cmath>#include<cstring>#...原创 2018-03-10 13:17:11 · 224 阅读 · 0 评论 -
PAT L1 013 计算阶乘和
题目描述:对于给定的正整数N,需要你计算 S = 1! + 2! + 3! + ... + N!。输入格式:输入在一行中给出一个不超过10的正整数N。输出格式:在一行中输出S的值。输入样例:3输出样例:9这个题如果10变成了更大的数字就不好玩了,不过十以内完全可以打开计算器写一下 哈哈哈哈#include<cstdio>#include<...原创 2018-03-10 13:15:53 · 648 阅读 · 0 评论 -
PAT L1 012 计算指数
题目描述:真的没骗你,这道才是简单题 —— 对任意给定的不超过10的正整数n,要求你输出2n。不难吧?输入格式:输入在一行中给出一个不超过10的正整数n。输出格式:在一行中按照格式“2^n = 计算结果”输出2n的值。输入样例:5输出样例:2^5 = 32哈 pow(底数,次数); 代码如下:#include<cstdio>#include&...原创 2018-03-10 13:05:52 · 475 阅读 · 0 评论 -
PAT L1 011 A-B
题目描述:本题要求你计算A-B。不过麻烦的是,A和B都是字符串 —— 即从字符串A中把字符串B所包含的字符全删掉,剩下的字符组成的就是字符串A-B。输入格式:输入在2行中先后给出字符串A和B。两字符串的长度都不超过104,并且保证每个字符串都是由可见的ASCII码和空白字符组成,最后以换行符结束。输出格式:在一行中打印出A-B的结果字符串。输入样例:I love GPLT...原创 2018-03-10 13:02:50 · 416 阅读 · 0 评论 -
PAT L1 010 比较大小
题目描述:本题要求将输入的任意3个整数从小到大输出。输入格式:输入在一行中给出3个整数,其间以空格分隔。输出格式:在一行中将3个整数从小到大输出,其间以“->”相连。输入样例:4 2 8输出样例:2->4->8此题没什么好说的,直接粘代码#include<cstdio>#include<cstdlib>#in...原创 2018-03-10 12:51:32 · 252 阅读 · 0 评论