PAT刷题
文章平均质量分 64
Mic_Mickey
这个作者很懒,什么都没留下…
展开
-
1030 Travel Plan (30 分)
1030 Travel Plan (30 分)题意:给出城市数N(≤500,从0编号),道路数M,起点城市S和终点城市D(均不超过500的整数);接着M行,给出两城市及其间距离和费用。???? 输出最短路径及其总距离和总费用(不止一条时,输出费用最少的那条)原创 2021-03-16 15:37:06 · 282 阅读 · 0 评论 -
1003 Emergency (25 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意原题目: 1003 Emergency (25 分).题意原创 2021-03-16 11:04:44 · 217 阅读 · 0 评论 -
1076 Forwards on Weibo (30 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析注意点:知识点词汇CODE原题目: 1076 Forwards on Weibo (30 分).题意一个微博用户有很多粉丝,也可能关注其他用户,由此建立了社交网络。当一个用户发了一条微博,ta的粉丝可以查看并转发,并且可以再被粉丝的粉丝转发。现给出一个社交网络,计算每个用户的微博转发量的最大可能值,假设计算到L层间接粉丝。给出用户数量N(≤1000,从1开始编号)和间接粉丝层数L(≤6);接着N行,给出每人的关注量M以及关注对象ID(不能关注自己原创 2021-03-15 17:12:41 · 642 阅读 · 0 评论 -
1034 Head of a Gang (30 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析知识点词汇原题目: 1034 Head of a Gang (30 分).题意警察通过犯罪团伙成员间的通话时长来判断头目。一个犯罪团伙至少有3人,彼此间的权值(通话时长)大于给定阈值K。每个团伙中,总权值最高的为头目。给出通话次数N和权值阈值K(均小于等于1000);接着N行,给出通话双方姓名(三个大写字母组成)以及通话时长(不大于1000min的正整数)① 计算团伙数量,② 以及每个团伙的头目姓名和成员总数(按头目姓名的字母序排序)。分析知识原创 2021-03-15 15:31:27 · 225 阅读 · 0 评论 -
1118 Birds in Forest (25 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意原题目: 1118 Birds in Forest (25 分).题意一幅画⾥面的⻦为同一棵树上的,① 问有多少棵树和多少只鸟,②以及对于两只鸟判断是否在同⼀棵树上。...原创 2021-03-14 21:29:08 · 236 阅读 · 0 评论 -
1114 Family Property (25 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析知识点注意点CODE原题目: 1114 Family Property (25 分).题意计算家族资产。给出每个人的家庭成员及其名下房产,计算家族成员人数、他们房产的平均面积和平均房产数量。给出人数N。接着N行,给出每人及其父母的ID(四位数,若去世则ID为-1),孩子个数k以及孩子们的ID,房产总数M以及房产总面积。① 输出家族数目,② 每个家族中最小的ID、总人数M、平均房产套数和平均面积(都精确到3位小数)(优先按平均面积的递减顺序输出,其次按原创 2021-03-14 17:51:53 · 210 阅读 · 0 评论 -
1107 Social Clusters (30 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意原题目: 1107 Social Clusters (30 分).题意社交群中的人拥有共同的兴趣爱好给出社交网络中的总人数N(1N-1),接着给出每人的爱好数K以及爱好ID(11000)输出社交群数量(或许用set),以及各群人数(非递增)...原创 2021-03-14 16:16:18 · 295 阅读 · 0 评论 -
1144 The Missing Number (20 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析知识点STL之映射mapCODE原题目: 1144 The Missing Number (20 分).题意给n个数字,找到不在这个数字列表⾥面的最⼩的正整数。分析将每个数字出现的次数存储在map⾥面, num从1开始,如果m[num] == 0说明不存在,则输出这个num。知识点STL之映射map&1 头文件#include <map>using namespace std;&2 声明map<stri原创 2021-03-13 11:13:37 · 239 阅读 · 0 评论 -
1120 Friend Numbers (20 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析知识点CODE原题目: 1120 Friend Numbers (20 分).题意Friend Numbers指各位数字之和相同的数,且这个“和”作为它们的Friend ID。分析利用集合set中元素的不重复性和有序性。知识点集合set复习,见???? 传送门:1154 Vertex Coloring (25 分)CODE#include <iostream>#include <set>using namespace原创 2021-03-13 10:51:35 · 94 阅读 · 0 评论 -
1126 Eulerian Path (25 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析CODE原题目: 1126 Eulerian Path (25 分).题意如果⼀一个连通图的所有结点的度都是偶数,那么它就是Eulerian,如果除了了两个结点的度是奇数其他都是偶数,那么它就是Semi-Eulerian,否则就是Non-Eulerian。分析存储:用邻接表存储无向图。先 判断连通性:用DFS从结点1开始遍历,注意标记已遍历过的结点,并用计数器 cnt 计算遍历过的结点数,与总顶点数对比即可知是否连通图。判断Eulerian:遍历原创 2021-03-13 10:39:44 · 157 阅读 · 0 评论 -
1142 Maximal Clique (25 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析CODE原题目: 1142 Maximal Clique (25 分).题意clique是一个点集,在一个无向图中,这个点集中的任意两个不同点之间都是相连的。maximal clique是一个clique,这个clique再加入一个新的结点就不是clique了。分别给出顶点和无向边数Nv和Ne,以及每条边所连两个顶点的序号(1-Nv),????判断所给顶点是否构成maximal clique或者clique。分析先判断是否是clique——判断任原创 2021-03-13 10:13:31 · 226 阅读 · 0 评论 -
1146 Topological Order (25 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析知识点CODE原题目: 1146 Topological Order (25 分).题意给出有向图的顶点数N(1-N)和有向边数M,以及每条弧的狐尾和狐头。① 判断所给序列是否为符合该有向图的拓扑排序,② 输出非拓扑序列的序列序号(从0开始)。分析存储:① 用 邻接表v 存储有向图(即每个顶点的所有入边);② 用数组 in 记录每个顶点的入度。判断拓扑序列:遍历所给序列,① 拓扑序列(未判断部分)的第一个顶点的入度总是为0,即若第一个顶点入度非原创 2021-03-13 09:46:30 · 201 阅读 · 0 评论 -
1154 Vertex Coloring (25 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析知识点2 STL之集合setCODE原题目: 1154 Vertex Coloring (25 分).题意给出图的顶点数N和边数M,以及M条边两端的顶点的序号(0~N-1);给出每个点的颜色,????判断是否满足同一条边两端的顶点的颜色不同(判断k组给色)。分析用struct型vector存边对应的顶点序号。用普通数组存顶点序号(数组下标)对应的颜色 → 可以随机访问 → 判断边两端颜色是否相同。用 set集合 存储颜色,利用set集合只存不同原创 2021-03-12 23:23:21 · 242 阅读 · 0 评论 -
1043 Is It a Binary Search Tree (25 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析CODE原题目: 1043 Is It a Binary Search Tree (25 分).题意给出BST的结点数N以及其结点序列(经递增排序后可得BST中序序列),① 要求判断给出的序列是否是BST或者镜像BST的先序序列,② 如果是,输出BST的后序序列。分析如果是BST(或镜像)的话,比根结点小的最大结点 与 比根结点大的最小结点 的下标相差刚好为1。将BST的先序序列转成后序序列,过程中若发现不满足 分析1,则提前退出遍历——使得后原创 2021-03-12 20:43:09 · 202 阅读 · 0 评论 -
1064 Complete Binary Search Tree (30 分)*
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析CODE原题目: 1064 Complete Binary Search Tree (30 分).题意二叉查找树的左子树结点值比根结点小,右子树结点值大于或等于根结点。给出结点数N以及N个不重复的非负整数(不大于2000)。建立二叉查找树,同时也是完全二叉树,????输出它的层序序列。分析已知中序序列,可求root下标,进而求出层序。因为二叉搜索树BST的中序满足——是一组递增的有序序列,所以只需排序所给序列即可得到中序。根据完全二叉树的结点数原创 2021-03-12 20:18:16 · 105 阅读 · 0 评论 -
1099 Build A Binary Search Tree (30 分)*
1099 Build A Binary Search Tree (30 分)题意:给出一棵二叉搜索树每个结点的左右孩子,根结点ID为0,要求插入数值,????输出层序遍历序列。原创 2021-03-12 17:31:21 · 230 阅读 · 0 评论 -
1079 Total Sales of Supply Chain (25 分)*
1079 Total Sales of Supply Chain (25 分)题意给出供应链的成员总数N(0-N-1),根供应商给的价格P,增长率r,以及来自供应商 i 的经销商个数和经销商ID(ID=0代表零售商并随之给出产品数量)。????计算所有零售商的总销售额(精确到1个小数点)。原创 2021-03-12 16:58:46 · 106 阅读 · 0 评论 -
1106 Lowest Price in Supply Chain (25 分)*
1106 Lowest Price in Supply Chain (25 分)题意:给出供应链成员个数n(0~n-1)以及根供应商的价格P和提价率r,接着给出0-(n-1)供应商的直接经销商或零售商总数及其ID(第0个供应商为根供应商);其中,若ID为0则该供应商实为零售商。① 计算出最低售价,② 以及这样的零售商的个数,精确到4位小数。原创 2021-03-12 16:38:52 · 91 阅读 · 0 评论 -
1090 Highest Price in Supply Chain (25 分)*
1090 Highest Price in Supply Chain (25 分)题意:在树根处货物的价格为P,然后每往下走一层,价格增加r%。→ 给出供应商成员数N,价格P,增加率r,然后给出N个ID,第i个ID是第i个成员(其实是经销商)的供应商的ID。其中,若ID为-1则该成员i是根供应商。① 求所有叶子结点中的最高价格,② 以及这个价格的叶子结点个数,精确至2位小数。原创 2021-03-12 16:09:31 · 87 阅读 · 0 评论 -
1110 Complete Binary Tree (25 分)
1110 Complete Binary Tree (25 分)题意:给出n个结点(0~n-1)的左右孩子,????判断这棵树是否是完全二叉树。原创 2021-03-12 15:35:05 · 95 阅读 · 0 评论 -
1115 Counting Nodes in a BST (30 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析知识点CODE(有误)CODE原题目: 1115 Counting Nodes in a BST (30 分).题意二叉搜索树——递归定义的二叉树,左子树结点值不超过根结点的值,右子树结点值大于根结点的值,左右子树也是二叉搜索树。给出一串待插入二叉搜索树的值,????计算最后两层的的结点数。分析用链表存储,递归构建二叉搜索树。深度优先搜索,传入的参数为结点和当前结点的深度depth,如果当前结点为NULL就更新最大深度maxdepth的值并ret原创 2021-03-12 11:56:50 · 93 阅读 · 0 评论 -
1102 Invert a Binary Tree (25 分)
1102 Invert a Binary Tree (25 分)题意:给出一棵二叉树的结点个数N(编号0-N-1),接着N行给出相应结点的左孩子和右孩子;????分别以层序遍历和中序遍历输出这棵二叉树反转后的二叉树。原创 2021-03-11 17:46:01 · 99 阅读 · 0 评论 -
1004 Counting Leaves (30 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o原题目: 1004 Counting Leaves (30 分)题意:给出结点树N以及非叶结点数M;随后:结点下标ID,孩子数K,孩子结点下标ID(下标为两位数)。????要求输出从根结点开始的每层的叶子结点数(感觉这句话原文不太好理解WORDS & CHUNKS释义WORD & CHUNKS释义pedigree家谱non-leaf node非叶节点seniority level资历等级...原创 2021-03-11 15:58:51 · 80 阅读 · 0 评论 -
1020 Tree Traversals (25 分)
1020 Tree Traversals (25 分):给出二叉树结点数N以及后序和中序序列(无重复值),????输出层序序列。原创 2021-03-10 11:53:09 · 207 阅读 · 0 评论 -
1086 Tree Traversals Again (25 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意原题目: 1086 Tree Traversals Again (25 分)题意原创 2021-03-09 21:52:31 · 112 阅读 · 0 评论 -
1127 ZigZagging on a Tree (30 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意原题目: 1127 ZigZagging on a Tree (30 分)题意原创 2021-03-09 11:40:09 · 177 阅读 · 0 评论 -
1138 Postorder Traversal (25 分)
跟着柳婼学姐学习的笔记ヾ(≧▽≦*)o题意分析 V1CODE V1分析 V2CODE V2知识点词汇原题目: 1138 Postorder Traversal (25 分)题意给出前序和中序序列,????要求输出后序遍历序列的第一个元素。分析 V1通过前序和中序序列生成后序序列。关键:利用前序序列第一个元素总是根结点的特点,找到根结点在中序序列中的位置,将前序和中序序列划分为左子树区间和右子树区间,再往下递归。递归式:生成后序序列,则逻辑同后序遍历;“访问根结点”操作——压入post数组中原创 2021-03-07 17:08:45 · 279 阅读 · 0 评论 -
1147 Heaps (30 分)
这里写目录标题题意分析知识点词汇CODE原题目: 1147 Heaps (30 分)题意给出M棵完全二叉树的层序遍历(无重复值),① 判断是否是 堆,是大顶堆还是小顶堆;② 然后输出这棵树的 后序遍历。分析知识点词汇CODE...原创 2021-03-07 15:18:48 · 83 阅读 · 0 评论 -
1155 Heap Paths (30 分)
原题目: 1155 Heap Paths (30 分).题意给出一棵完全二叉树的层序遍历序列(无重复数值),打印出所有叶子节点到根节点的路径,并且按从右到左的顺序;最后,判断是否是heap,是max(父结点不小于孩子)还是min(父结点不大于孩子)。分析1.(递归方法)要求打印根结点到叶子结点的路径,故用dfs(但为根右左)遍历,vector保存一路上的结点;dfs的结束条件为递归至叶子结点,则打印出vector中存的路径,并用push和pop维护路径;index<=n是对只有左叶节点没有右节原创 2021-03-04 11:50:33 · 240 阅读 · 1 评论