![](https://img-blog.csdnimg.cn/20200313175551101.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
团体程序设计天梯赛-练习集
该专栏题目为PTA上的“团体程序设计天梯赛-练习集”习题
牧心.
心之所向,素履以往
展开
-
L2-027 名人堂与代金券 (25分)
题目描述:对于在中国大学MOOC(http://www.icourse163.org/)学习“数据结构”课程的学生,想要获得一张合格证书,总评成绩必须达到 60 分及以上,并且有另加福利:总评分在 [G, 100] 区间内者,可以得到 50 元 PAT 代金券;在 [60, G) 区间内者,可以得到 20 元PAT代金券。全国考点通用,一年有效。同时任课老师还会把总评成绩前 K 名的学生列...原创 2020-04-01 23:41:59 · 31360 阅读 · 0 评论 -
L2-025 分而治之 (25分) 【邻接表】
题目描述:分而治之,各个击破是兵家常用的策略之一。在战争中,我们希望首先攻下敌方的部分城市,使其剩余的城市变成孤立无援,然后再分头各个击破。为此参谋部提供了若干打击方案。本题就请你编写程序,判断每个方案的可行性。输入格式:输入在第一行给出两个正整数 N 和 M(均不超过10 000),分别为敌方城市个数(于是默认城市从 1 到 N 编号)和连接两城市的通路条数。随后 M 行,每行...原创 2020-03-25 23:14:45 · 32931 阅读 · 0 评论 -
L2-023 图着色问题 (25分)
图着色问题是一个著名的NP完全问题。给定无向图G=(V,E),问可否用K种颜色为V中的每一个顶点分配一种颜色,使得不会有两个相邻顶点具有同一种颜色?但本题并不是要你解决这个着色问题,而是对给定的一种颜色分配,请你判断这是否是图着色问题的一个解。输入格式:输入在第一行给出3个整数V(0<V≤500)、E(≥0)和K(0<K≤V),分别是无向图的顶点数、边数、以及颜色数。...原创 2020-04-01 23:41:55 · 31916 阅读 · 0 评论 -
L2-019 悄悄关注 (25分)
题目描述:新浪微博上有个“悄悄关注”,一个用户悄悄关注的人,不出现在这个用户的关注列表上,但系统会推送其悄悄关注的人发表的微博给该用户。现在我们来做一回网络侦探,根据某人的关注列表和其对其他用户的点赞情况,扒出有可能被其悄悄关注的人。输入格式:输入首先在第一行给出某用户的关注列表,格式如下:人数N 用户1 用户2 …… 用户N其中N是不超过5000的正整数,每个用户i...原创 2020-04-01 23:41:51 · 31427 阅读 · 0 评论 -
L2-017 人以群分 (25分)
题目描述:社交网络中我们给每个人定义了一个“活跃度”,现希望根据这个指标把人群分为两大类,即外向型(outgoing,即活跃度高的)和内向型(introverted,即活跃度低的)。要求两类人群的规模尽可能接近,而他们的总活跃度差距尽可能拉开。输入格式:输入第一行给出一个正整数N(2≤N≤105)。随后一行给出N个正整数,分别是每个人的活跃度,其间以空格分隔。题目保证这些数...原创 2020-04-01 23:41:47 · 31523 阅读 · 0 评论 -
L2-009 抢红包 (25分)
题目描述:没有人没抢过红包吧…… 这里给出N个人之间互相发红包、抢红包的记录,请你统计一下他们抢红包的收获。输入格式:输入第一行给出一个正整数N(≤104),即参与发红包和抢红包的总人数,则这些人从1到N编号。随后N行,第i行给出编号为i的人发红包的记录,格式如下:KN1P1⋯NKPK其中K(0≤K≤20)是发出去的红包个数,Ni是抢到...原创 2020-04-01 23:41:44 · 31324 阅读 · 0 评论 -
L2-008 最长对称子串 (25分)
题目描述:对给定的字符串,本题要求你输出最长对称子串的长度。例如,给定Is PAT&TAP symmetric?,最长对称子串为s PAT&TAP s,于是你应该输出11。输入格式:输入在一行中给出长度不超过1000的非空字符串。输出格式:在一行中输出最长对称子串的长度。输入样例:Is PAT&TAP symmetric?...原创 2020-04-01 23:41:40 · 31747 阅读 · 0 评论 -
L2-006 树的遍历 (25分)
题目描述:给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其后序遍历序列。第三行给出其中序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树的层序遍历的序列。数字间以1个空格分隔,行首尾不得有多余空格。输入样例:72 3 ...原创 2020-04-01 23:41:36 · 31366 阅读 · 0 评论 -
L2-005 集合相似度 (25分)
给定两个整数集合,它们的相似度定义为:Nc/Nt×100%。其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数。你的任务就是计算任意一对给定集合的相似度。输入格式:输入第一行给出一个正整数N(≤50),是集合的个数。随后N行,每行对应一个集合。每个集合首先给出一个正整数M(≤104),是集合中元素的个数;然后跟M个[0,10...原创 2020-04-01 23:41:32 · 31416 阅读 · 0 评论 -
L2-004 这是二叉搜索树吗? (25分)
题目描述:一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点,其左子树中所有结点的键值小于该结点的键值; 其右子树中所有结点的键值大于等于该结点的键值; 其左右子树都是二叉搜索树。所谓二叉搜索树的“镜像”,即将所有结点的左右子树对换位置后所得到的树。给定一个整数键值序列,现请你编写程序,判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果。输入格式:...原创 2020-04-01 23:41:25 · 31696 阅读 · 1 评论 -
L2-002 链表去重 (25分)
给定一个带整数键值的链表L,你需要把其中绝对值重复的键值结点删掉。即对每个键值K,只有第一个绝对值等于K的结点被保留。同时,所有被删除的结点须被保存在另一个链表上。例如给定L为 21→-15→-15→-7→15,你需要输出去重后的链表 21→-15→-7,还有被删除的链表 -15→15。输入格式:输入在第一行给出 L 的第一个结点的地址和一个正整数N(≤105,为...原创 2020-03-30 22:10:43 · 31774 阅读 · 0 评论 -
L1-063 吃鱼还是吃肉 (10分)
题目描述:国家给出了 8 岁男宝宝的标准身高为 130 厘米、标准体重为 27 公斤;8 岁女宝宝的标准身高为 129 厘米、标准体重为 25 公斤。现在你要根据小宝宝的身高体重,给出补充营养的建议。输入格式:输入在第一行给出一个不超过 10 的正整数N,随后N行,每行给出一位宝宝的身体数据:性别 身高 体重其中性别是 1 表示男生,0 表示女生。身高...原创 2020-03-30 22:10:17 · 31618 阅读 · 0 评论 -
L1-061 新胖子公式 (10分)
题目描述:根据钱江晚报官方微博的报导,最新的肥胖计算方法为:体重(kg) / 身高(m) 的平方。如果超过 25,你就是胖子。于是本题就请你编写程序自动判断一个人到底算不算胖子。输入格式:输入在一行中给出两个正数,依次为一个人的体重(以 kg 为单位)和身高(以 m 为单位),其间以空格分隔。其中体重不超过 1000 kg,身高不超过 3.0 m。输出格式:首先输出将...原创 2020-03-30 22:09:20 · 32002 阅读 · 0 评论 -
L1-060 心理阴影面积 (5分)
题目描述:这是一幅心理阴影面积图。我们都以为自己可以匀速前进(图中蓝色直线),而拖延症晚期的我们往往执行的是最后时刻的疯狂赶工(图中的红色折线)。由红、蓝线围出的面积,就是我们在做作业时的心理阴影面积。现给出红色拐点的坐标(x,y),要求你算出这个心理阴影面积。输入格式:输入在一行中给出 2 个不超过 100 的正整数x和y,并且保证有x>y。这里假设横、...原创 2020-03-30 22:09:15 · 31639 阅读 · 0 评论 -
L1-058 6翻了 (15分)
题目描述:“666”是一种网络用语,大概是表示某人很厉害、我们很佩服的意思。最近又衍生出另一个数字“9”,意思是“6翻了”,实在太厉害的意思。如果你以为这就是厉害的最高境界,那就错啦 —— 目前的最高境界是数字“27”,因为这是 3 个 “9”!本题就请你编写程序,将那些过时的、只会用一连串“6666……6”表达仰慕的句子,翻译成最新的高级表达。输入格式:输入在一行中给出...原创 2020-03-30 22:08:34 · 32813 阅读 · 0 评论 -
L1-057 PTA使我精神焕发 (5分)
题目描述:以上是湖北经济学院同学的大作。本题就请你用汉语拼音输出这句话。输入格式:本题没有输入。输出格式:在一行中按照样例输出,以惊叹号结尾。输入样例:无输出样例:PTA shi3 wo3 jing1 shen2 huan4 fa1 !#include <stdio.h>int main(){ prin...原创 2020-03-30 22:08:10 · 31841 阅读 · 0 评论 -
L1-056 猜数字 (20分)
题目描述:一群人坐在一起,每人猜一个 100 以内的数,谁的数字最接近大家平均数的一半就赢。本题就要求你找出其中的赢家。输入格式:输入在第一行给出一个正整数N(≤104)。随后 N 行,每行给出一个玩家的名字(由不超过8个英文字母组成的字符串)和其猜的正整数(≤100)。输出格式:在一行中顺序输出:大家平均数的一半(只输出整数部分)、赢家的名字,其间以空格分隔...原创 2020-03-30 22:06:38 · 31706 阅读 · 0 评论 -
L1-055 谁是赢家 (10分)
题目描述:某电视台的娱乐节目有个表演评审环节,每次安排两位艺人表演,他们的胜负由观众投票和 3 名评委投票两部分共同决定。规则为:如果一位艺人的观众票数高,且得到至少 1 名评委的认可,该艺人就胜出;或艺人的观众票数低,但得到全部评委的认可,也可以胜出。节目保证投票的观众人数为奇数,所以不存在平票的情况。本题就请你用程序判断谁是赢家。输入格式:输入第一行给出 2 个不超过 100...原创 2020-03-30 22:06:26 · 31718 阅读 · 0 评论 -
L1-054 福到了 (15分)
题目描述:“福”字倒着贴,寓意“福到”。不论到底算不算民俗,本题且请你编写程序,把各种汉字倒过来输出。这里要处理的每个汉字是由一个 N×N 的网格组成的,网格中的元素或者为字符@或者为空格。而倒过来的汉字所用的字符由裁判指定。输入格式:输入在第一行中给出倒过来的汉字所用的字符、以及网格的规模 N (不超过100的正整数),其间以 1 个空格分隔;随后 N 行,每行给出 N...原创 2020-03-30 22:06:14 · 32227 阅读 · 3 评论 -
L1-053 电子汪 (10分)
题目描述:据说汪星人的智商能达到人类 4 岁儿童的水平,更有些聪明汪会做加法计算。比如你在地上放两堆小球,分别有 1 只球和 2 只球,聪明汪就会用“汪!汪!汪!”表示 1 加 2 的结果是 3。本题要求你为电子宠物汪做一个模拟程序,根据电子眼识别出的两堆小球的个数,计算出和,并且用汪星人的叫声给出答案。输入格式:输入在一行中给出两个 [1, 9] 区间内的正整数 A 和 B...原创 2020-03-30 22:06:05 · 31797 阅读 · 0 评论 -
L1-052 2018我们要赢 (5分)
题目描述:2018年天梯赛的注册邀请码是“2018wmyy”,意思就是“2018我们要赢”。本题就请你用汉语拼音输出这句话。输入格式:本题没有输入。输出格式:在第一行中输出:“2018”;第二行中输出:“wo3 men2 yao4 ying2 !”。输入样例:无输出样例:2018wo3 men2 yao4 ying2 !#inc...原创 2020-03-29 23:52:12 · 31846 阅读 · 0 评论 -
L1-051 打折 (5分)
题目描述:去商场淘打折商品时,计算打折以后的价钱是件颇费脑子的事情。例如原价 ¥988,标明打 7 折,则折扣价应该是 ¥988 x 70% = ¥691.60。本题就请你写个程序替客户计算折扣价。输入格式:输入在一行中给出商品的原价(不超过1万元的正整数)和折扣(为[1, 9]区间内的整数),其间以空格分隔。输出格式:在一行中输出商品的折扣价,保留小数点后 2 位。...原创 2020-03-29 23:51:57 · 31940 阅读 · 0 评论 -
L1-047 装睡 (10分)
题目描述:你永远叫不醒一个装睡的人 —— 但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次,脉搏是每分钟50-70次。下面给定一系列人的呼吸频率与脉搏,请你找出他们中间有可能在装睡的人,即至少一项指标不在正常范围内的人。输入格式:输入在第一行给出一个正整数N(≤10)。随后N行,每行给出一个人的名字(仅由英文字母组成...原创 2020-03-29 23:51:38 · 31902 阅读 · 0 评论 -
L1-050 倒数第N个字符串 (15分)
题目描述:给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,序列为 { aaa, aab, aac, ..., aaz, aba, abb, ..., abz, ..., zzz }。这个序列的倒数第27个字符串就是 zyz。对于任意给定的 L,本题要求你给出对应序列倒数第 N 个字符串...原创 2020-03-29 23:51:53 · 31712 阅读 · 5 评论 -
L1-049 天梯赛座位分配 (20分)
题目描述:天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情。为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位参赛选手。令每校选手排成一列纵队,第 i+1 队的选手排在第 i 队选手之后。从第 1 所学校开始,各校的第 1 位队员顺次入座,然后是各校的第 2 位队员…… 以此类推。如果最后只剩...原创 2020-03-29 23:51:50 · 31560 阅读 · 0 评论 -
L1-048 矩阵A乘以B (15分)
题目描述:给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra行、Ca列,B有Rb行、Cb列,则只有Ca与Rb相等时,两个矩阵才能相乘。输入格式:输入先后给出两个矩阵A和B。对于每个矩阵,首先在一行中给出其行数R和列数C,随后R行,每行给出C个整数,以1个空格分隔,且行首尾没有多余的空格。输...原创 2020-03-29 23:51:42 · 31659 阅读 · 0 评论 -
L1-046 整除光棍 (20分)
题目描述:这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如,111111就可以被13整除。 现在,你的程序要读入一个整数x,这个整数一定是奇数并且不以5结尾。然后,经过计算,输出两个数字:第一个数字s,表示x乘以s是一个光棍,第二个数字n是这个光棍的位数。这样的解当然不是唯一的,题目要求你...原创 2020-03-29 23:51:17 · 31482 阅读 · 0 评论 -
L1-045 宇宙无敌大招呼 (5分)
题目描述:据说所有程序员学习的第一个程序都是在屏幕上输出一句“Hello World”,跟这个世界打个招呼。作为天梯赛中的程序员,你写的程序得高级一点,要能跟任意指定的星球打招呼。输入格式:输入在第一行给出一个星球的名字S,是一个由不超过7个英文字母组成的单词,以回车结束。输出格式:在一行中输出Hello S,跟输入的S星球打个招呼。输入样例:Mars...原创 2020-03-29 23:51:04 · 32564 阅读 · 0 评论 -
L1-044 稳赢 (15分)
题目描述:大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:现要求你编写一个稳赢不输的程序,根据对方的出招,给出对应的赢招。但是!为了不让对方输得太惨,你需要每隔K次就让一个平局。输入格式:输入首先在第一行给出正整数K(≤10),即平局间隔的次数。随后每行给出对方的一次出招:ChuiZi代表“锤子”、JianDao代表“剪刀”、Bu代表“布”。End...原创 2020-03-29 23:50:59 · 31661 阅读 · 0 评论 -
L1-043 阅览室 (20分)
题目描述:天梯图书阅览室请你编写一个简单的图书借阅统计程序。当读者借书时,管理员输入书号并按下S键,程序开始计时;当读者还书时,管理员输入书号并按下E键,程序结束计时。书号为不超过1000的正整数。当管理员将0作为书号输入时,表示一天工作结束,你的程序应输出当天的读者借书次数和平均阅读时间。注意:由于线路偶尔会有故障,可能出现不完整的纪录,即只有S没有E,或者只有E没有S的纪录,系统应能...原创 2020-03-28 21:01:37 · 31896 阅读 · 0 评论 -
L1-042 日期格式化 (5分)
题目描述:世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。下面请你写个程序,自动把读入的美国格式的日期改写成中国习惯的日期。输入格式:输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。输出格式:在一行中按照“yyyy-mm-dd”的格式给出年、月、日。...原创 2020-03-28 21:01:19 · 32140 阅读 · 0 评论 -
L1-041 寻找250 (10分)
题目描述:对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。输入格式:输入在一行中给出不知道多少个绝对值不超过1000的整数,其中保证至少存在一个“250”。输出格式:在一行中输出第一次出现的“250”是对方扔过来的第几个数字(计数从1开始)。题目保证输出的数字在整型范围内。输入样例:888 666 1...原创 2020-03-28 21:01:12 · 32487 阅读 · 0 评论 -
L1-040 最佳情侣身高差 (10分)
题目描述:专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09 =(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。输入格式:输入第一行给出正整数N(≤10),为前来查询的用户数。随后N行,每行按照“性别 身高”的格式给出前来查询的用户的性别和身高,其...原创 2020-03-28 21:00:56 · 32250 阅读 · 0 评论 -
L1-039 古风排版 (20分)
题目描述:中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。输入格式:输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。输出格式:按古风格式排版给定的字符串,每列N个字符(除了最后一列可能不足N个)。输入样例:4This is a test cas...原创 2020-03-28 20:59:31 · 31920 阅读 · 0 评论 -
L1-038 新世界 (5分)
题目描述:这道超级简单的题目没有任何输入。你只需要在第一行中输出程序员钦定名言“Hello World”,并且在第二行中输出更新版的“Hello New World”就可以了。输入样例:无输出样例:Hello WorldHello New World#include <cstdio>int main() { printf(...原创 2020-03-28 21:00:06 · 32265 阅读 · 0 评论 -
L1-037 A除以B (10分)
题目描述:真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果。输入格式:输入在第一行给出两个整数A和B(−100≤A,B≤100),数字间以空格分隔。输出格式:在一行中输出结果:如果分母是正数,则输出“A/B=商”;如果分母是负数,则要用括号把分母括起来输出;如果分母为零,则输出的商应为Error。输出的商应保留小数点...原创 2020-03-28 00:15:22 · 32037 阅读 · 0 评论 -
L1-036 A乘以B (5分)
题目描述:看我没骗你吧 —— 这是一道你可以在 10 秒内完成的题:给定两个绝对值不超过 100 的整数A和B,输出A乘以B的值。输入格式:输入在第一行给出两个整数A和B(−100≤A,B≤100),数字间以空格分隔。输出格式:在一行中输出A乘以B的值。输入样例:-8 13输出样例:-104#in...原创 2020-03-28 20:59:15 · 31975 阅读 · 0 评论 -
L1-035 情人节 (15分)
题目描述:以上是朋友圈中一奇葩贴:“2月14情人节了,我决定造福大家。第2个赞和第14个赞的,我介绍你俩认识…………咱三吃饭…你俩请…”。现给出此贴下点赞的朋友名单,请你找出那两位要请客的倒霉蛋。输入格式:输入按照点赞的先后顺序给出不知道多少个点赞的人名,每个人名占一行,为不超过10个英文字母的非空单词,以回车结束。一个英文句点.标志输入的结束,这个符号不算在点赞名单里。...原创 2020-03-28 00:09:48 · 31870 阅读 · 0 评论 -
L1-034 点赞 (20分)
题目描述:微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特性。输入格式:输入在第一行给出一个正整数N(≤1000),是该用户点赞的博文数量。随后N行,每行给出一篇被其点赞的博文的特性描述,格式为“KF1⋯FK”,其中...原创 2020-03-28 20:58:40 · 32376 阅读 · 0 评论 -
L1-033 出生年 (15分)
题目描述:以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不相同的年份。”也就是说,直到2013年才达到“4个数字都不相同”的要求。本题请你根据要求,自动填充“我出生于y年,直到x岁才遇到n个数字都不相同的年份”这句话。输入格式:输入在一行中给出出生年份y和目标年份中不同数字的个数n,其中y在[1, 3000]之间,n可以是2、或3、或4。注意不足4...原创 2020-03-27 23:56:46 · 32378 阅读 · 0 评论