自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 4.23洛谷刷题总结

3.接下来我们开始判断运算字符,在判断字符的过程中,遇到一个运算符,就取出栈顶的俩个元素进行运算,运算后再存入栈顶,然后把之前用来存入数字字符的值的变量num赋值为0,把之前参与运算的栈元素赋值为0,例,如果是栈顶和栈的第二个元素运算的话,结果存入栈顶,栈的第二个元素赋值为0。如果从某个 $0 出发,只向上下左右 $4$ 个方向移动且仅经过其他 $0$ 的情况下,无法到达方阵的边界,就认为这个 $0$ **在闭合圈内**。由数字 $0$ 组成的方阵中,有一任意形状的由数字 1构成的闭合圈。

2024-04-03 17:40:26 815

原创 2.23数据与结构算法学习日记(贪心)

有 n 组学生,给出初始时每组中的学生个数,再给出每组学生人数的上界 R 和下界 L (L≤R),每次你可以在某组中选出一个学生把他安排到另外一组中,问最少要多少次才可以使 N 组学生的人数都在 [L,R] 中。

2024-02-23 22:17:39 388

原创 2.22数据结构与算法学习日记(动态规划和dfs复习)

Michael 喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael 想知道在一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度会减小。在上面的例子中,一条可行的滑坡为 24−17−16−124−17−16−1(从 24 开始,在 1 结束)。当然 25-24-23-……-3-2-1 更长。事实上,这是最长的一条。

2024-02-22 23:31:23 667

原创 2.21数据与结构算法学习日记(最小生成树prim算法)

1. Prim算法:从一个顶点开始,每次选择与当前生成树最近的顶点加入生成树中,直到所有顶点都被加入。算法的基本思想是从一个初始顶点开始,逐步扩展生成树,每次选择与当前生成树最近的顶点加入生成树中,直到所有顶点都被加入。Prim算法的时间复杂度取决于如何实现最小堆数据结构,通常为O(V^2)或O(ElogV),其中V为顶点数,E为边数。2. 从生成树中的所有顶点出发,找到与生成树中的顶点相连且权值最小的边,将其连接的顶点加入生成树。如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出。

2024-02-21 22:12:23 2225

原创 2.20数据结构与算法学习日记(二叉树第一部分)

二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树具有以下特点:1. 根节点:二叉树的顶端节点称为根节点,它没有父节点。2. 子节点:每个节点最多有两个子节点,分别称为左子节点和右子节点。3. 叶节点:没有子节点的节点称为叶节点。4. 深度:从根节点到某个节点的唯一路径上的节点数称为该节点的深度。5. 高度:从某个节点到叶节点的最长路径上的节点数称为该节点的高度。6. 完全二叉树:除了最底层之外,每一层的节点都是满的,并且最底层的节点都靠左排列。

2024-02-20 22:08:16 1159

原创 2.19数据结构与算法学习日记(蓝桥杯省赛二分贪心)

1,根据题目,每个编号为i的瓶子回到位置数组下标为i的位置去,所以在交换时把编号为i的瓶子与数组下标为i的交换,这时保证他回到原位。例如一块 6×56×5 的巧克力可以切出 66 块 2×22×2 的巧克力或者 22 块 3×33×3 的巧克力。3,先判断当前数 ai​ 的位置是否正确,如果正确,直接跳过。小明一共有 N 块巧克力,其中第 i 块是 Hi​×Wi​ 的方格组成的长方形。2,如果巧克力块数大于小孩子个数,那么增大边长,如果小于,则减小边长。有 N 个瓶子,编号 1∼N,放在架子上。

2024-02-19 21:52:08 906 1

原创 2.18数据结构与算法学习日记(蓝桥杯省赛)

给定 n 个整数 a1​,a2​,⋯,an​, 求它们两两相乘再相加的和,即。

2024-02-19 11:41:17 441 1

原创 2.16数据结构与算法学习日记(模拟,搜索)

2,根据题目发现dfs算法可以用在这进行搜索,考虑dfs函数的构建,首先,有个返回条件就是minn=0时,就不必再往后重复算了,因为这肯定是绝对值中最小了,然后就是进行minn的改变,那啥时才能对minn改变呢就是当他俩相加符合规定的亲密度(保证在一起)时对minn进行改变(还有个前提条件就是保证现在所有事情都考虑过取和不取的情况了,此时考虑事情数应该大于能做的事情数,相等是代表你现在正在考虑第n件事)平局两人都得 0 分。他们以后的生活将取决于两人的好感值之差的绝对值,这个值越小,他们的生活将越幸福。

2024-02-16 21:50:34 1101 1

原创 2.15数据结构与算法学习日记(分治,二分)

在你的养牛场,所有的奶牛都养在一排呈直线的牛栏中。一共有 �n 头奶牛,其中第 �i 头牛在直线上所处的位置可以用一个整数坐标 ��(0≤��≤108)pi​(0≤pi​≤108) 来表示。在无聊的日子里,奶牛们常常在自己的牛栏里与其它奶牛交流一些八卦新闻。每头奶牛发出的声音响度是一样的,而由于声波的能量衰减,某头奶牛发出的声音只能被与它距离不超过 �(0≤�≤104)d(0≤d≤104) 的奶牛所听到,这样这对奶牛就称为可以相互交流的。

2024-02-15 22:22:13 1017 1

原创 2.14数据结构与算法学习日记

很久以前,魔界大旱,水井全部干涸,温度也越来越高。为了拯救居民,夜叉族国王龙溟希望能打破神魔之井,进入人界“窃取”水灵珠,以修复大地水脉。可是六界之间皆有封印,神魔之井的封印由蜀山控制,并施有封印。龙溟作为魔界王族,习有穿行之术,可任意穿行至任何留有空隙的位置。然而封印不留有任何空隙!龙溟无奈之下只能强行破除封印。破除封印必然消耗一定的元气。为了寻找水灵珠,龙溟必须减少体力消耗。他可以在破除封印的同时使用越行术。

2024-02-14 21:39:06 770 1

原创 2.8数据结构与算法学习日记(bfs和01背包和完全背包)

小明在玩一款迷宫游戏,在游戏中他要控制自己的角色离开一间由 N×N 个格子组成的二维迷宫。小明的起始位置在左上角,他需要到达右下角的格子才能离开迷宫。每一步,他可以移动到上下左右相邻的格子中(前提是目标格子可以经过)。迷宫中有些格子小明可以经过,我们用表示;有些格子是墙壁,小明不能经过,我们用表示。此外,有些格子上有陷阱,我们用X表示。除非小明处于无敌状态,否则不能经过。有些格子上有无敌道具,我们用表示。当小明第一次到达该格子时,自动获得无敌状态,无敌状态会持续 K 步。

2024-02-08 20:54:48 1197

原创 2.7数据结构与算法学习日记(动态规划01背包和并查集)

dp[i][j]代表的是以j为容量所放入的前i个物品的最大价值,然后开始分析俩种情况,如果是不取这个物品的话(你不要这个物品的话(或当前容量小于物品所需容量),那此时你的dp[i][j]里存放的价值是不是你不加他之前的最大价值,那么你此时的最大价值没变所以你的dp[i][j]会等于dp[i-1][j])因为你不取它,那么容量不用动,只需取你前i-1个物品的最大价值就行,所以。对于 100%100% 的数据,1≤N≤104,1≤M≤2×105,1≤Xi​,Yi​≤N,Zi​∈{1,2}。

2024-02-07 21:34:50 946 1

原创 2.6数据结构与算法学习日记

把 m 个同样的苹果放在 n 个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法。(5,1,15,1,1 和 1,1,51,1,5 是同一种方法)

2024-02-06 22:05:27 269 1

原创 2.5数据结构与算法学习日记

2,因为要从小到大输出,所以我们对数据按时间排序,定义一个单调队列数组(n个帖子,n个队列)每一个帖子存一个队列,此时,有效赞的个数就是队列的大小,数据依次判断入队。如果一个帖子曾在任意一个长度为 D 的时间段内收到不少于 K 个赞,小明就认为这个帖子曾是“热帖”。2,不可能被淹没的岛屿满足四个方向都是陆地的条件,所以此时不可能被淹没的岛屿加一。对于 100%100% 的数据,1≤K≤N≤105,0≤id,ts≤105。1,题目总体思路,所有岛屿减去不可能被完全淹没的岛屿等于被淹没的岛屿。

2024-02-05 22:18:38 920 1

原创 2.2数据结构与算法学习日记

一个如下的 $6 \times 6$ 的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。1.根据题目要保证每个棋子所在的位置的对角线和行还有列上只有它一个棋子,所以当棋子走时它的列和对角线上有重复的已经标记为走过的时,此时就不能走,得换下一个位置。2,用一个函数来单独标记列和俩个对角线,并把当时可以走的列坐标赋给一个答案数组里,此时无论如何答案数组里的肯定是能走的列坐标。行号 $1\ 2\ 3\ 4\ 5\ 6$

2024-02-02 22:43:23 718

原创 2.1数据结构与算法学习日记

Byteburg市东边的建筑都是以旧结构形式建造的:建筑互相紧挨着,之间没有空间.它们共同形成了一条长长的,从东向西延伸的建筑物链(建筑物的高度不一).Byteburg市的市长Byteasar,决定将这个建筑物链的一侧用海报覆盖住.并且想用最少的海报数量,海报是矩形的.海报与海报之间不能重叠,但是可以相互挨着(即它们具有公共边),每一个海报都必须贴近墙并且建筑物链的整个一侧必须被覆盖(意思是:海报需要将一侧全部覆盖,并且不能超出建筑物链)

2024-02-02 00:31:25 2637

原创 1.31数据与结构学习日记

1.题目要求我们把一个自然数n拆分成若干个小于n的自然数之和,由题目输入输出示例可以得出是从1开始找并相加,如果找到的数不符合相加等于自然数n,则回退一步加1再找(这就可以得出dfs算法的运用)以此类推,用所得的结果  mod11,所得的余数即为识别码,如果余数为 10,则识别码为大写字母 X。3.当模11后的识别码不等于所输入字符串的最后一个字符,则把识别码赋值给最后一个字符,然后输出新字符串,如果等于,则输出Right。,否则,按照规定的格式,输出正确的 ISBN 号码(包括分隔符。

2024-01-31 23:25:20 773

原创 1.30数据与结构算法学习日记(单调队列和栈的运用)

2.指令1是往正方向走,指令2是往负方向走,指令3其实就是相当于求当前队列的长度,对于指令1和指令2我们就循环判断每个队列里的元素加上x方向长度后是否在【-k,k】中如果不在就弹出队列因为是可能会在队尾弹出也会在队列头弹出,所以我们选择用单调队列,双端队列。3.队列实现后,因为是滑动窗口,所以要判断队列头是否在界内(目前所在的位置i减去当前队列头的大于等于k规定的范围大小时,应把队列头往后移,就是相当于把当前队列头删去,然后给后一个充当队列头)数轴的长度是有限制的,具体的范围是 [−k,k]。

2024-01-30 23:59:39 2290 1

原创 1.29数据与结构算法学习日记

B 君站在一个 $n\times n$ 的棋盘上。最开始,B君站在 $(1,1)$ 这个点,他要走到 $(n,n)$ 这个点。B 君每秒可以向上下左右的某个方向移动一格,但是很不妙,C 君打算阻止 B 君的计划。**每秒结束的时刻**,C 君 会在 $(x,y)$ 上摆一个路障。B 君不能走在路障上。B 君拿到了 C 君准备在哪些点放置路障。所以现在你需要判断,B 君能否成功走到 $(n,n)$。**保证数据足够弱:也就是说,无需考虑“走到某处然后被一个路障砸死”的情况,因为答案不会出现此类情况。

2024-01-29 23:10:06 887

原创 1.28数据与结构算法学习日记

高手最近谈恋爱了。不过是单相思。“即使是单相思,也是完整的爱情”,高手从未放弃对它的追求。今天,这个阳光明媚的早晨,太阳从西边缓缓升起。于是它找到高手,希望在晨读开始之前和高手一起在鳌头山上一起散步。高手当然不会放弃这次梦寐以求的机会,他已经准备好了一切。

2024-01-29 00:50:44 741

原创 1.26 数据结构与算法学习日记

学校里有一个水房,水房里一共装有 m 个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为 1。现在有 n 名同学准备接水,他们的初始接水顺序已经确定。将这些同学按接水顺序从 1到 n 编号,i 号同学的接水量为i​。接水开始时,1 到 m 号同学各占一个水龙头,并同时打开水龙头接水。当其中某名同学 j 完成其接水量要求 wj​ 后,下一名排队等候接水的同学 k 马上接替 j 同学的位置开始接水。这个换人的过程是瞬间完成的,且没有任何水的浪费。

2024-01-26 22:40:49 1101 1

原创 洛谷p1706 全排列问题

按照字典序输出自然数 1 到 n 所有不重复的排列,即 n 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。

2024-01-25 22:21:52 250

原创 洛谷p1739 - 表达式括号匹配

假设一个表达式有英文字母(小写)、运算符()和左右小(圆)括号构成,以作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则输出YES;否则输出NO。表达式长度小于 255,左圆括号少于 20 个。

2024-01-25 21:39:48 380

原创 洛谷p1996-约瑟夫问题

n 个人围成一圈,从第一个人开始报数,数到 m 的人出列,再由下一个人重新从 1 开始报数,数到 m 的人再出圈,依次类推,直到所有的人都出圈,请输出依次出圈人的编号。

2024-01-25 21:15:20 221

原创 洛谷p1101 单词方阵

第一行输入一个数 n。(7≤n≤100)。第二行开始输入n×n 的字母矩阵。突出显示单词的n×n 矩阵.输入 #17aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa输出 #1*************************************************输入 #28qyizhonggydthkjynwidghjiorbzsfgzhhgrhwthzzzzzozoiwdfrgngyyyy

2024-01-25 20:54:20 416

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除