- 博客(62)
- 收藏
- 关注
原创 L2-046 天梯赛的赛场安排 #二次手写cmp比较函数 这个模拟思路太神了
😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。巴拉巴拉一大堆,实际上题目都告诉我们用什么算法能得到最优解了。但是模拟的过程还是十分的艰辛。B站up主,一天五顿饭。
2025-04-06 16:09:15
100
原创 L2-048 寻宝图 # Flood fill
给定一幅地图,其中有水域,有陆地。有些岛屿上埋藏有宝藏,这些有宝藏的点也被标记出来了。本题就请你统计一下,给定的地图上一共有多少岛屿,其中有多少是有宝藏的岛屿。),是地图的尺寸,表示地图由 N 行 M 列格子构成。随后 N 行,每行给出 M 位个位数,其中 0 表示水域,1 表示陆地,2-9 表示宝藏。注意:两个格子共享一条边时,才是“相邻”的。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。在一行中输出 2 个整数,分别是岛屿的总数量和有宝藏的岛屿的数量。B站up主 一天五顿饭。
2025-04-06 10:28:40
197
原创 L2-049 鱼与熊掌 #反向建图
输入首先在第一行给出 2 个正整数,分别是:n(≤10 5)为总人数(所有人从 1 到 n 编号)、m(2≤m≤10 5)为物品种类的总数(所有物品种类从 1 到 m 编号)。最后是查询信息:首先在一行中给出查询总量 Q(≤100),随后 Q 行,每行给出一对物品种类编号,其间以空格分隔。3)是该人拥有的物品种类数量,后面的 M[*] 是物品种类的编号。题目保证每个人的物品种类清单中都没有重复给出的种类。这样对于指定的物品,我们只需要遍历该物品被谁拥有。对每一次查询,在一行中输出两种物品兼得的人数。
2025-04-06 10:10:13
239
原创 L2-051 满树的遍历 # DFS遍历树
如果输入的树是 k 阶满树,则加 1 个空格后输出 yes,否则输出 no。最后在第二行输出该树的前序遍历序列,数字间以 1 个空格分隔,行首尾不得有多余空格。随后 n 行,第 i 行(1≤i≤n)给出第 i 个结点的父结点编号。根结点没有父结点,则对应的父结点编号为 0。一棵“k 阶满树”是指树中所有非叶结点的度都是 k 的树。判断所有非0大小的顶点(不是叶节点)的孩子数量,如果不等于k那么就不是k阶满树,同时动态更新k的值。注:树中结点的度是其拥有的子树的个数,而树的度是树内各结点的度的最大值。
2025-04-06 09:03:51
304
原创 L2-052 吉利矩阵 # DFS 剪枝
本题就请你统计一下,把 7 换成任何一个 [2,9] 区间内的正整数 L,把矩阵阶数换成任何一个 [2,4] 区间内的正整数 N,满足条件“所有元素为非负整数,且各行各列的元素和都等于 L”的 N×N 方阵一共有多少种?所有元素为非负整数,且各行各列的元素和都等于 7 的 3×3 方阵称为“吉利矩阵”,因为这样的矩阵一共有 666 种。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。从矩阵左上角开始枚举所有可能填入的元素,根据条件进行剪枝优化。B站up主 一天五顿饭。
2025-04-06 08:30:23
234
原创 团队程序设计天梯赛 L2-026 小字辈
输入在第一行给出家族人口总数 N(不超过 100 000 的正整数) —— 简单起见,我们把家族成员从 1 到 N 编号。随后第二行给出 N 个编号,其中第 i 个编号对应第 i 位成员的父/母。家谱中辈分最高的老祖宗对应的父/母编号为 -1。一行中的数字间以空格分隔。首先输出最小的辈分(老祖宗的辈分为 1,以下逐级递增)。然后在第二行按递增顺序输出辈分最小的成员的编号。本题给定一个庞大家族的家谱,要请你给出最小一辈的名单。辈分就是一个结点的深度,最大深度的结点就是最小辈分。b站up主 : 一天五顿饭。
2025-04-05 19:18:53
94
原创 团体设计程序天梯赛L2-025 # 分而治之
在战争中,我们希望首先攻下敌方的部分城市,使其剩余的城市变成孤立无援,然后再分头各个击破。本题就请你编写程序,判断每个方案的可行性。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。攻击完之后,遍历每个顶点,判断其是否有边相连,如果有的话则NO。第一行给一个N和M,表示敌方城市个数和连接两城市的通路条数。随后M行,每行给出一条通路所连接的两个城市的编号,对于每套方案,如果可行就输出YES,否则输出NO。B站up主 : 一天五顿饭。
2025-04-05 18:26:50
281
原创 L2-024 部落 #GPLT,并查集 C++
K P[1] P[2] ⋯ P[K] 其中K是小圈子里的人数,P[i](i=1,⋯,K)是小圈子里每个人的编号。,将每个圈子的第一个人作为父节点,在合并集合的过程当中,统计人的个数,最后根节点的个数就是圈子的个数,而查询是否属于同一个圈子是并查集的基本应用。我们认为朋友的朋友都算在一个部落里,于是要请你统计一下,在一个给定社区中,到底有多少个互不相交的部落?首先在一行中输出这个社区的总人数、以及互不相交的部落的个数。之后一行给出一个非负整数Q,随后Q行,每行给出一对儿被查询的人的编号。
2025-04-05 17:21:07
348
原创 L2-023 图着色问题 #DFS C++邻接矩阵存图
对每种颜色分配方案,如果是图着色问题的一个解则输出Yes,否则输出No,每句占一行。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。这个这里给出的V个顶点的颜色数量大于K,那么可直接输出No。随后给出正整数N,表示检查颜色分配方案的个数。分别代表无向图的顶点,边数,以及颜色数。最后N行,每行给出V个顶点的颜色。为V中每一个顶点分配一种颜色,顶点和颜色都从1到V编号。B站up主–一天能吃五顿饭。第一行给出V,E,
2025-04-05 16:23:00
373
原创 带分数 蓝桥杯历届真题 #暴力枚举
😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。原题时限 3 秒, 64M。蓝桥杯 2013 年第四届省赛。注意:不要求输出每个表示,只统计有多少表示法!不重复不遗漏地组成带分数表示的全部种数。分别出现且只出现一次(不包含。注意特征:带分数中,数字。从标准输入读入一个正整数。
2025-04-03 20:11:07
587
原创 费解的开关 #二进制枚举
游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。来表示这种状态,0代表不按,1代表按 如 00001代表前4个灯不按,最后一个灯按。的整数,它表示对于输入数据中对应的游戏状态最少需要几步才能使所有灯变亮。若当前状态有解,那么第一行的所有方案中一定有一种按法对应答案的按法。每个位置上的灯有按与不按两种情况,那么第一行所有按灯的方案有32种。每一个灯都有一个开关,游戏者可以改变它的状态。每一步,游戏者可以改变某一个灯的状态。表示一盏开着的灯,用数字。
2025-04-03 18:22:47
1187
原创 [NOIP 2008 提高组] 火柴棒等式 # 暴力枚举
😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。是用火柴棍拼出的整数(若该数非零,则最高位不能是。使用两重循环,枚举A和B的所有情况即可。根火柴棍,你可以拼出多少个形如。一个整数,能拼成的不同等式的数目。noip2008 提高第二题。【输入输出样例 1 解释】【输入输出样例 2 解释】
2025-04-03 07:18:25
838
原创 涂条纹 #暴力枚举
列的格子,每个格子是白色蓝色红色之一,小 a 希望把这个布改成合法图案,方法是在一些格子上涂颜料,盖住之前的颜色。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。小 A 很懒,希望涂最少的格子,使这块布成为一个合法的图案。个小方块组成的旗帜符合如下规则,就是合法的图案。枚举所有白色蓝色和红色的行数情况,动态更新答案。行是一个矩阵,矩阵的每一个小方块是。一个整数,表示至少需要涂多少块。现有一个棋盘状的布,分成了。
2025-04-03 07:05:58
976
原创 [COCI 2008/2009 #2] PERKET #DFS
为了做好 Perket,厨师必须谨慎选择食材,以在保持传统风味的同时尽可能获得最全面的味道。当我们添加配料时,总的酸度为每一种配料的酸度总乘积;总的苦度为每一种配料的苦度的总和。众所周知,美食应该做到口感适中,所以我们希望选取配料,以使得酸度和苦度的绝对差最小。另外,我们必须添加至少一种配料,因为没有任何食物以水为配料的。对于每一种配料,我们知道它们各自的酸度。一行一个整数,表示可能的总酸度和总苦度的最小绝对差。,且将所有可用食材全部使用产生的总酸度和总苦度小于。种食材的酸度和苦度。,酸度和苦度不同时为。
2025-04-02 16:05:46
1020
原创 数据结构 二维动态数组 寄包柜 #vector,c++
是确定然而未知的,但是保证一定不小于该柜子存物品请求的格子编号的最大值。当然也有可能某些寄包柜中一个格子都没有。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。对于每个寄包柜,格子编号从 1 开始,一直到。每个寄包柜格子数量不一,第。个行,每行有若干个整数,表示一次操作。对于查询操作时,输出答案,以换行隔开。个格子,不过我们并不知道各个。,寄包柜个数和询问次数。
2025-04-01 10:45:38
815
原创 字符串排序 [NOIP 1998 提高组] 拼数 (C++)
设有n个正整数a1an,将它们联接成一排,相邻数字首尾相接,组成一个最大的整数。
2025-04-01 09:17:47
1168
原创 基础算法 扫雷游戏 #模拟
列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。注:一个格子的周围格子包括其上、下、左、右、左上、右上、左下、右下八个方向上与之直接相邻的格子。表示地雷格,用周围的地雷个数表示非地雷格。列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数。表示相应格子是非地雷格。个字符,描述了雷区中的地雷分布情况。表示相应格子是地雷格,字符。
2025-03-29 19:37:33
274
原创 打水问题 #贪心算法,前缀和
例如样例中,Ti从小到大排序为1,2,3,4,5,6,7,将他们依次分配到3个龙头,则去龙头一打水的为1,4,7;去龙头二打水的为2,5;去第三个龙头打水的为3,6。N个人要打水,有M个水龙头,第i个人打水所需时间为Ti,请安排一个合理的方案使得所有人的等待时间之和尽量小。第一个龙头打水的人总等待时间 = 0 + 1 + (1 + 4) = 6。第二个龙头打水的人总等待时间 = 0 + 2 = 2。第三个龙头打水的人总等待时间 = 0 + 3 = 3。
2025-03-28 16:25:37
410
原创 铺设道路 # 贪心算法
如果 当前元素a[i] > a[i-1] 那么ans+=a[i-1]+a[i],因为填前面坑的时候可以顺带减少这次的填坑次数。如果 当前元素a[i] < a[i-1] 那么不用计算答案,可以在填前面坑的时候顺带被填上。春春希望你能帮他设计一种方案,可以在最短的时间内将整段道路的下陷深度都变为。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。在选择区间时,需要保证,区间内的每块区域在填充前下陷深度均不为。,填充这段区间中的每块区域,让其下陷深度减少。块首尾相连的区域,一开始,第。
2025-03-26 18:46:20
691
原创 蓝桥杯历届真题 填充#贪心算法
这些位置上可以任意填充 0 或者 1,请问如何填充这些位置使得这个 01 串中出现互不重叠的 00 和 11 子串最多,输出子串个数。配对儿 : 如果当前字符和下一个字符一致,或者两个连续的字符里出现一个问号,那么也可以配对儿成功。如果在问号处填 0 ,则最多出现一个 00 和一个 11:111000。贪心算法证明难度较大,可以猜出来一个规律后直接使用,不需要严格证明其正确性。然后去找一个反例证明其是错的,如果证明不出来,那么它就是对的!看到最大最小可以考虑一手贪心算法,然后直接猜出来一个规律。
2025-03-24 20:14:10
487
原创 蓝桥杯历届真题 飞机降落 #DFS 解法 详细解释(C++)
原题链接NNN 架飞机准备降落到某个只有一条跑道的机场。其中第 iii 架飞机在 TiT_{i}Ti 时刻到达机场上空,到达时它的剩余油料还可以继续盘旋 DiD_{i}Di 个单位时间,即它最早可以于 TiT_{i}Ti 时刻开始降落,最晩可以于 Ti+DiT_{i}+D_{i}Ti+Di 时刻开始降落。降落过程需要 LiL_{i}Li 个单位时间。一架飞机降落完毕时,另一架飞机可以立即在同一时刻开始降落,但是不能在前一架飞机完成降落前开始降落。请你判断 NNN 架飞机是否可以全部安全降落。输入
2025-03-23 08:33:00
696
原创 队列应用,宽度优先搜索 BFS #走迷宫
利用队列进行宽度优先搜索(BFS),从左上角开始向四周进行遍历,每经过一个点则记录路径长度,第一个到达n,m点的距离即为最短距离。的二维整数数组,用来表示一个迷宫,数组中只包含 0或 1,其中 0表示可以走的路,1表示不可通过的墙壁。接下来 n 行,每行包含 m个整数(0 或 1),表示完整的二维数组迷宫。请问,该人从左上角移动至右下角 (n,m) 处,至少需要移动多少次。输出一个整数,表示从左上角移动至右下角的最少移动次数。最初,有一个人位于左上角 (1,1)数据保证 (1,1)处和 (n,m)
2025-03-19 07:43:02
290
原创 基础算法 高精度运算 #大数加法
😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。两行,第一行a,第二行b。a和b的长度均小于1000位。输入两个正整数a,b,输出a+b的值。acwing算法平台。
2025-02-14 19:27:05
225
原创 基础算法 归并排序 #求逆序对
an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。采用分治的思想,将数组递归的分成两半然后进行排序都,最后通过不断合并有序的子数组得到整体有序的数组。在合并的过程当中,需要使用一个临时数组来存放合并结果,最后还需要将temp复制回原数组的对应位置。第二行 n 个数,表示给定的序列。第一行,一个数 n,表示序列中有 n个数。在合并的过程中可以顺带统计逆序对的数量。acwing 算法平台。
2025-02-14 19:12:36
307
原创 基础算法# 求一个数的二进制表示当中有几个1 (C++)
统计[L,R]区间内的所有数在二进制下包含的“1”的个数之和。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。直接将该数字转为二进制表示,求其有几个1即可。如5的二进制为101,包含2个“1”。acwing 算法平台。
2025-02-14 18:25:50
185
原创 蓝桥杯历届真题 #分布式队列 (Java,C++)
主、副节点中都各自维护着一个队列,当往分布式队列中添加元素时都是由主节点完成的(每次都会添加元素到队列尾部);可以认为主/副节点中的队列是一个长度无限的一维数组,下标为。由于副本的同步速度各异,因此为了保障数据的一致性,元素添加到主节点后,需要同步到所有的副节点后,才具有可见性。给出一个分布式队列的运行状态,所有的操作都按输入顺序执行。由于同步元素是同步主队列的下一个元素,因此我们不需要关心具体的元素值,只需要关心有几个元素即可。,同时副节点中的元素的同步顺序和主节点中的元素添加顺序保持一致。
2025-01-10 18:26:10
3009
原创 蓝桥杯历届真题 # 训练士兵(JAVA,C++)
为了确保训练的高效性,王国推出了一种组团训练的方案。作为训练指挥官,请你计算出最少需要花费多少金币,才能使得所有的士兵都成为顶尖战士?和 $S $,用一个空格分隔,表示士兵的数量和进行一次组团训练所需的金币数。名士兵,这些士兵需要接受一系列特殊的训练,以提升他们的战斗技能。枚金币(组团训练方案可以多次购买,即士兵可以进行多次组团训练)。输出一行包含一个整数,表示使所有士兵成为顶尖战士所需的最少金币数。名士兵进行一次训练的金币成本和要成为顶尖战士所需的训练次数。名士兵来说,进行一次训练所需的成本为。
2025-01-10 18:06:43
1346
原创 蓝桥杯历届真题 # 封闭图形个数(C++,Java)
在比较两个数的大小时,如果它们的封闭图形个数不同,那么封闭图形个数较多的数更大。个整数,相邻整数之间使用一个空格分隔,表示按照蓝桥王国的数字大小规则从小到大排序后的结果。在蓝桥王国,数字的大小不仅仅取决于它们的数值大小,还取决于它们所形成的“封闭图形”的个数。的封闭图形个数相同,因此需要进一步按照数值大小对它们进行排序,最终得到。值得注意的是,封闭图形的个数是可以累加的。如果两个数字的封闭图形个数和数值都相同,那么这两个数字被认为是相等的。如果两个数的封闭图形个数相同,那么数值较大的数更大。
2025-01-10 17:57:15
1441
2
原创 蓝桥杯历届真题 # 数字诗意(C++,Java)
小蓝,当代顶级诗人与数学家,被赋予了“数学诗人” 的美誉。他擅长将冰冷的数字与抽象的诗意相融合,并用优雅的文字将数学之美展现于纸上。请问,小蓝需要删除多少个数字,才能使剩下的数字全部蕴含诗意?输出一行包含一个整数,表示小蓝需要删除的数字个数,以使剩下的数字全部蕴含诗意。无法表示为连续的正整数相加,因此,需要删除的数字个数为。小蓝希望他面前的所有数字都蕴含诗意,为此,他决定从这。在诗人的眼中,数字是生活的韵律,也是诗意的表达。,相邻整数之间使用一个空格分隔,表示展示的数字。相加表示,那么它就蕴含诗意。
2025-01-10 17:50:38
1678
1
原创 蓝桥杯历届真题--#R格式(C++,Java) 高精度运算
😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。视为字符串时的长度。
2025-01-06 15:40:53
1316
1
原创 蓝桥杯历届真题--#好数,简单模拟(C++,Java)
一个整数如果按从低位到高位的顺序,奇数位(个位、百位、万位……)上的数字是奇数,偶数位(十位、千位、十万位。)上的数字是偶数,我们就称之为“好数”😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。可以利用奇数位上的数字是奇数,偶数位上的数字是偶数来进行判定。
2025-01-05 18:04:58
678
原创 树型DP #二叉苹果树,树上的01背包问题
v子树中选取k条边,已经遍历的u子树中选择j-k-1条边,得到当前u子树选取j条边的状态。这里的v子树是e[i]😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。对于每条边,都有选择或者不选,树上的01背包问题。每个物品体积为1,价值就是其边权。Acwing & 董晓算法 🌹。
2024-12-29 12:56:29
303
原创 树型DP #皇宫看守
😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。Acwing 算法平台。
2024-12-29 12:36:23
289
原创 树型DP # 战略游戏
如果u点不放士兵,那么其子节点必须放士兵,不然这两条边不能同时被瞭望。😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻。如果u点放士兵,那么其子节点可放可不放,取min计算即可。本篇文章参考于 ACWING算法平台。
2024-12-29 12:04:59
271
原创 数位DP #度的数量
🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。
2024-12-26 11:55:42
382
原创 动态规划 #树型dp,树的中心
🌻编写本篇文章目的是笔者想以输出的形式进行学习,顺便记录学习点滴🌻😇 本篇文章可能存在多处不足,如有修改意见,可以私信或者评论我哦 😇。
2024-12-21 11:21:09
379
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人