L2-003 月饼 (25 分)L2-003 月饼 (25 分)月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。 注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我 2022-04-15 Algorithm C++ 团体程序设计天梯赛 Sort 结构体 贪心
L2-013 红色警报 (25 分)L2-013 红色警报 (25 分)战争中保持各个城市间的连通性非常重要。本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色警报。注意:若该国本来就不完全连通,是分裂的k个区域,而失去一个城市并不改变其他城市之间的连通性,则不要发出警报。 输入格式:输入在第一行给出两个整数N(0 < N ≤ 500)和M(≤ 5000),分别为城市个数(于是默认城市从 2022-04-15 Algorithm Data Structure C++ 团体程序设计天梯赛 Graph 邻接矩阵 DFS
L2-011 玩转二叉树 (25 分)L2-011 玩转二叉树 (25 分)给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。 输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其中序遍历序列。第三行给出其前序遍历序列。数字间以空格分隔。 输出格式:在一行中输出该树反转后的层序遍历的序 2022-04-14 Algorithm Data Structure C++ 团体程序设计天梯赛 Binary tree BFS
L2-035 完全二叉树的层序遍历 (25 分)L2-035 完全二叉树的层序遍历 (25 分)一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树。对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就是完全二叉树。 给定一棵完全二叉树的后序遍历,请你给出这棵树的层序遍历结果。 输入格式:输入在第一行中给出正整数 N(≤30),即树中结点个数。第二行给出后序遍历序 2022-04-14 Algorithm Data Structure C++ 团体程序设计天梯赛 Binary tree
L2-031 深入虎穴 (25 分)著名的王牌间谍 007 需要执行一次任务,获取敌方的机密情报。已知情报藏在一个地下迷宫里,迷宫只有一个入口,里面有很多条通路,每条路通向一扇门。每一扇门背后或者是一个房间,或者又有很多条路,同样是每条路通向一扇门…… 他的手里有一张表格,是其他间谍帮他收集到的情报,他们记下了每扇门的编号,以及这扇门背后的每一条通路所到达的门的编号。007 发现不存在两条路通向同一扇门。 内线告诉他,情报就藏在迷宫 2022-04-13 Algorithm Data Structure C++ 团体程序设计天梯赛 邻接表 Vector Binary tree BFS
L2-040 哲哲打游戏 (25 分)L2-040 哲哲打游戏 (25 分)哲哲是一位硬核游戏玩家。最近一款名叫《达诺达诺》的新游戏刚刚上市,哲哲自然要快速攻略游戏,守护硬核游戏玩家的一切! 为简化模型,我们不妨假设游戏有 N 个剧情点,通过游戏里不同的操作或选择可以从某个剧情点去往另外一个剧情点。此外,游戏还设置了一些存档,在某个剧情点可以将玩家的游戏进度保存在一个档位上,读取存档后可以回到剧情点,重新进行操作或者选择,到达不同的剧 2022-04-13 Algorithm Data Structure C++ 团体程序设计天梯赛 邻接表 Vector 模拟
L2-027 名人堂与代金券 (25 分)L2-027 名人堂与代金券 (25 分)对于在中国大学MOOC(http://www.icourse163.org/ )学习“数据结构”课程的学生,想要获得一张合格证书,总评成绩必须达到 60 分及以上,并且有另加福利:总评分在 [G, 100] 区间内者,可以得到 50 元 PAT 代金券;在 [60, G) 区间内者,可以得到 20 元PAT代金券。全国考点通用,一年有效。同时任课老师还会把 2022-04-13 Data Structure C++ 团体程序设计天梯赛 Sort
L2-026 小字辈 (25 分)L2-026 小字辈 (25 分)本题给定一个庞大家族的家谱,要请你给出最小一辈的名单。 输入格式:输入在第一行给出家族人口总数 N(不超过 100 000 的正整数) —— 简单起见,我们把家族成员从 1 到 N 编号。随后第二行给出 N 个编号,其中第 i 个编号对应第 i 位成员的父/母。家谱中辈分最高的老祖宗对应的父/母编号为 -1。一行中的数字间以空格分隔。 输出格式 2022-04-13 Algorithm Data Structure C++ 团体程序设计天梯赛 邻接表 Vector Binary tree BFS
L2-023 图着色问题 (25 分)L2-023 图着色问题 (25 分)图着色问题是一个著名的NP完全问题。给定无向图G=(V,E),问可否用K种颜色为V中的每一个顶点分配一种颜色,使得不会有两个相邻顶点具有同一种颜色? 但本题并不是要你解决这个着色问题,而是对给定的一种颜色分配,请你判断这是否是图着色问题的一个解。 输入格式:输入在第一行给出3个整数V(0<V≤500)、E(≥0)和K(0<K≤V),分别是 2022-04-12 Algorithm Data Structure C++ Set 团体程序设计天梯赛 Graph 邻接表 Vector
L2-022 重排链表 (25 分)L2-022 重排链表 (25 分)给定一个单链表 L1→L2→⋯→Ln−1→Ln,请编写程序将链表重新排列为 Ln→L1→Ln−1→L2→⋯。例如:给定L为1→2→3→4→5→6,则输出应该为6→1→5→2→4→3。 输入格式:每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址和结点总个数,即正整数N (≤105)。结点的地址是5位非负整数,NULL地址用−1表示。 接下来有N行, 2022-04-12 Algorithm C++ 团体程序设计天梯赛 LinkList 双向链表