- 博客(36)
- 收藏
- 关注
原创 主场景 工具栏 植物卡牌的渲染
好,那么就完成主场景和工具栏了,接下来同样步骤完成植物卡牌的操作。不过由于植物卡牌类型相同,可以使用for循环来进行加载和渲染。2.loadimage(&变量名,"加载的文件路径")表示从文件中加载图像到变量中。4.putimage(0, 0, &img)表示在窗口的 (0,0) 位置绘制图像。1.IMAGE内存变量存储的是一张位图(图像),存储了像素数据(颜色,尺寸等)主函数包含两个函数,初始化游戏窗口,把窗口渲染显示出来。哦,对了,还需要一个游戏窗口才能把图片给渲染出来。在初始化中加载文件到变量中。
2025-05-08 23:09:43
422
原创 记录学习的第三十五天
然后其实在力扣上做了三道题的,但是我看题解的情况就不太会。然后试着用上面的方法敲了一下↓的题,但是不对啊,我也不知道为什么呀。今天主攻单源最短路Dijkstra算法。不过,还是没有完全掌握。首先是书本的例题我理解了一遍。
2025-05-07 23:39:43
545
原创 记录学习的第三十一天
3.出窗口操作需要移动左指针,同时在哈希表中把这个元素的出现次数减一,如果此时减一之后发现等于0了,那么这个元素就不存在哈希表中了,把它在哈希表中删除,另外,此时窗口中的元素的种类就不满足等于整个数组的不同数字的个数的要求了。4.不过要注意的是假设固定在right时,left位置不满足,但是前一次的窗口是满足的,前前前……2.右指针开始进入窗口,把元素放进哈希表中,如果此时窗口的元素到达了整个数组的不同数字的个数,就进行下一步出窗口操作。1.首先肯定是要求出整个数组的不同数字有多少个的使用set来操作。
2025-04-24 23:04:23
677
原创 记录学习的第三十天
上面的思路是我自己做的,但是不知道为什么不行,有没有大佬能指点一下我。接下来这道题是进阶的。不过我之前的基础都做的很艰难,道阻且长啊。还是滑动窗口问题,这段时间不出意外都是这了。今天终于又开始写博客了。
2025-04-22 23:44:16
572
原创 记录学习的第二十九天
之后就做了ls题单第一部分,首先是定长滑窗问题。本来想着像昨天一样两个循环搞定的,就下面👇🏻。不过,结果肯定是超时啦,中等题是吧。下面两道题我都有详细的注释,看就行了👀。
2025-04-18 23:40:27
577
原创 记录学习的第二十八天
这道题其实很简单,不过我一开始想复杂了。想着用什么哈希表来着。其实这道题就是普通的遍历两次,然后判断条件就可以了。还是老规矩,每日一题。
2025-04-17 22:42:37
340
原创 记录学习的第二十七天
那么就可以用一个哈希表维护窗口中每个元素的个数,用一个pairs表示相同数对的个数。如果此时窗口中有c个元素x,此时再进一个x,那么相同数对就增加c个。如果此时窗口有c个元素x,此时再出一个x,那么相同数对就减少c-1个。今天效率低下,只做了一道力扣的每日一题。算法就是越长越合法型滑动窗口。外循环移右端点,内循环移左端点。
2025-04-16 23:28:29
465
原创 记录学习的第二十五天
今天终于又开始更新了。实在是星期六的蓝桥杯给了我一个大大的打击,今天终于好不容易缓过来了,可以好好学算法了。还是老规划,力扣的每日一题。不过今天的每日一题我之前做过了,就又提交了一次来签到。接下来才是哈希表做法。之后三道哈希表题目。我一开始是暴力过的。
2025-04-14 23:45:59
569
原创 记录学习的第二十四天
/接下来查找nums数组中最小值。之后做了一道sort排序题和一道bfs题。注意到bfs题用来求地图迷宫的最短路径。//此时不能把数组中全部元素变为k。//使用集合存储,找不同元素的个数。//找到最小值之后分类讨论即可。题解很巧,我根本想不到。
2025-04-09 23:50:24
361
原创 记录学习的第二十三天
这道题也是很巧,要注意到奇数比前一个数多一个1,偶数和这个数除以2的偶数相等。这道题我本来是想用最长递增子序列来做的,不过实在是太麻烦了,实在做不下去了。我一开始还想着暴力解一下试试呢,结果不太行😂。然后看了题解,发现可以倒着数。老样子,每日一题开胃。
2025-04-08 22:51:27
530
原创 记录学习的第二十一天
然后是第三题,我一开始还是想着能不能模拟做法的,然后发现一个问题,不知道该怎么把所以子序列表示出来,然后就卡住了。最后第四题,跟第一题一样,不过数据范围大了。我把第一题的代码贴过去,结果没通过全部试例,可能是时间复杂度没优化。我一看到第二题这么多,我就没怎么看了。说实话,这道题我不怎么理解,看着题解一点点敲的。总之,明天会继续跟进代码解答的,后续将在评论区或者下一篇文中进行解释。这道题就写了好久了,快一个小时左右吧。算是比较暴力的写法了。之后是力扣的第444场周赛。老规矩呀,力扣的每日一题。
2025-04-06 23:22:02
522
原创 记录学习的第二十天
根据i小于j,且j小于k,当nums[j]确定时,保证另外两个最大即可得答案。这道题其实跟昨天的每日一题是差不多的,不过这道题需要进行优化。今天只做了一道题,有点不在状态。所以可以使用前缀最大值和后缀最大值。
2025-04-03 23:41:11
430
原创 记录学习的第十九天
dp[k]就是dp[k-1](不打劫第k间房子)与dp[k-2]+nums[k-1](打劫第k间房子)的最大值了。那么可以拆开来求解(打了第一间就不打最后一间或者不打第一间),就变成单排求解,和上面一道题一样了。不过这里是从问题0开始的,和上面的顺序是相反的,知道这个思路之后就很好做了。我们要求的问题是可以通过子问题来得到的。还是能够清晰知道是从左往右的,先计算打劫较小的房子,一直到n个房子为止。这篇是关于简单的动态规划的题目,思路比较清晰类似。这道题的大问题是一夜之间偷n间房子的最大金额。
2025-04-02 23:55:12
590
原创 记录学习的第十八天
这道题其实我知道是有一些规律的。不过我没想到竟然使用暴力的写法。就是它肯定是水平走的路程的是343720的偶数倍,竖直走的路程是233333的偶数倍,然后满足15/17这个比例。这道题难啊,我一时半会儿也不太好说,明天附上我的草稿再解说一下。第一道题就比较简单了,先不管那七个人,算出其他的人次数,然后再算那七个人就可以了。今天这道题很友好,根据题目意思模拟就可以了。下面附上我的代码👇🏻。之后花了一个小时左右终于弄懂了上一年的蓝桥杯真题的拔河问题。两道填空真题也磨了我很久,主要是第二题。还是力扣的每日一题
2025-03-31 23:10:00
637
1
原创 记录学习的第十七天
Q4:这道题比赛的时候还想着努力一下做出来呢,尝试了很久,结果还是不行。看了题解之后,发现果然不是我可以做的,因为用到了[动态规划]的知识。昨天的蓝桥杯模拟赛,硬坐了4个小时,只会做前面的三道入门题。Q2:这道题我是列出了二十几项来判断的,发现都是10.9.8.7.6.5这几个数,我就赌了一把,把它们加起来,结果就过了。这是一道经典的图论问题,结合了树的遍历和动态规划,需要用到深度优先搜索。经过这两天的比赛,我深刻认识到了我还是一个小菜鸡,还需要学习很多的知识呀!下面是今天的力扣周赛,只做出了第一题。
2025-03-30 23:24:31
665
原创 记录学习的第十六天
结果这道题根本不在意这个操作的过程。实质就是求出这个字符串的不同字符有多少个,因为如果有相同的字符经过任意操作都可以消掉。今天这道题比较简单。不过我一开始看这道题的时候想复杂了,因为可能不知不觉就认为要求出操作的次数来😂。所以只要使用一个无序集合或者说是哈希表来存储字符串就可以了,然后再求出哈希表的长度即为答案。
2025-03-28 23:37:06
378
原创 记录学习的第十五天
2.进行相加之类的操作时需要处理进位的问题。可以使用一个进位标志来进行操作,如果有进位,flag就变为1。1.使用数组或者字符串存储一个很大的数(字符串不知道可不可以,还没探索到),注意:是逆序存储。把我的暴力解法贴上,希望大佬多多指教!所以就要求每一对相邻的字符相等的成本(相互独立)。关键在于要注意这一点:反转之后相等的还是相等,不相等的还是不相等。之后做了一道蓝桥杯真题,有关高精度的。还是老样子,首先力扣的每日一题开始。3.最后输出的时候就是逆序输出数组了。之后还做了一道篮桥杯真题:拔河。
2025-03-27 23:08:41
688
1
原创 记录学习的第十四天
之后看了题解,发现原来是一道数学问题,时间复杂度竟然可以到n(1)这个其实是一道数学问题,所需要删除的数其实是2的幂,所以就转换为求2的幂了。设置一个变量表示每一位,个位数为1,十位数为2,这样一直下去。关键就是如果是偶数,把这个数连续除以2,直到变成一个奇数为止。这道题其实我觉得比较简单的,然后我进行了下面的尝试👇🏻。之后三道洛谷里面的蓝桥杯真题,是比较简单的。首先定义一个函数求出每个数的封闭图形的数。然后根据封闭图形的数目进行判断就可以了。如果这个奇数是1,则这个偶数是2的幂。首先力扣的每日一题开菜
2025-03-26 23:01:10
511
原创 记录学习的第十三天
2.求bottomright时也要求的单元格开始,依次向下遍历直到[n][n],之后也把数丢到哈希表中,注意使用两个哈希表或者清空之前的哈希表后再开始重新计算,答案也是哈希表的长度。1.求topleft时从要求的单元格开始,依次向上遍历直到[0][0],然后把数丢到哈希表中,到最后所求的答案就是哈希表的长度。思路大概用暴力和哈希表就可以了,具体还有优化的思路我无能为力了,只能看一下题解。因为今天深受数据结构作业的茶毒,所以只敲了力扣的每日一题。3.遇到不同寻常的排序的时候,敏锐的察觉使用自定义排序。
2025-03-25 23:25:14
515
原创 记录学习的第十二天
还是比较简单的,注意存储s的前缀字符串数组的时候就可以了。不过在这里插入一个疑问,为什么使用insert不可以呢?今天只做了一道力扣的每日一题。
2025-03-24 23:13:39
258
原创 记录学习的第十一天
看了题解之后,发现竟然是用我昨天学的并查集的知识,震惊!(PS:其实一开始有点感觉的,不过没捉住这个感觉😅原谅我的借口吧哈哈哈)其实我差不多做了一大半了,但是问题出现在:该怎么做函数intersert(a,b)中,求出共有的不同整数?不过看似这个👆🏻解释也没解决我的共有的不同整数的问题,虽然没有用并查集但是我也把思路大概写出来了。Q1:比较简单的,参加了几次周赛了,第一次做出来的题目。Q3Q4:看了一下题目,太复杂了,我直接一整个放弃。Q2:做了一半,没有做出来,太可惜了😭。
2025-03-23 23:15:51
357
原创 记录学习的第十天
1.对一开始的每个点进行初始化,则认为一开始的时候每个点的祖先都是自己本身,之后再根据题目给出的条件在第二步的时候进行找到真正的祖先。因为是添加了一条边,所以一定有一个环,找到这个环中的最后一条边,这条边就是要删除的边。接着写了两道并查集的题目。并查集的题目根据模板写就行了。这样写的时候,编译出错了,原因在于f数组的长度小了,之后改为如下的时候就通过了👇🏻。这次的题目比较简单,直接进行模拟就可以了。3.根据他们的祖先,对两个独立的点或者两个子集合进行合并。2.递归找祖先,直接找到自己最老的那个祖先。
2025-03-22 22:57:39
595
原创 记录学习的第九天
这道题其实还是挺难的,我是看了题解才写出来的,要用到前缀和与后缀和的知识。什么时候可以不看题解做出来呢😭。今天只看了力扣的每日一题而已。
2025-03-21 23:27:49
161
原创 记录学习的第八天
我不理解为什么在示例1中,原本arr数组应该会是(1 0 0 0)的,然后经过选择k=4的翻转操作后应该是变成(0 1 1 1)的。虽然索引1和2都不能为1,但是索引3的答案是1?而在样例2中,初始为(1 0 0 0 0),然后经过k=3的操作将[0,2]范围翻转后变为(0 1 1 0 0)。然后说翻转后索引2为1,所以不能执行操作。今天在手机上看了力扣的每日一题,结果从题目给出的例子就已经看不懂了😭。那为什么在样例1中,索引1和2都为1,却可以执行此操作呢?
2025-03-20 23:05:24
346
原创 记录学习的第七天
我首先也是想到了用一个哈希表之类的把出现次数最多的元素依次记录下来,然后再进行分配,不过由于我的STL不太熟练,所以我用的方法存在问题。接着写了两道滑动窗口的题。滑动窗口需要注意的就是外循环扩展右指引,内循环扩展左指引,然后进行出窗口的判断和进行进窗口。我的思路与题解的思路存在最大的差异就是,题解是根据每一行来存的,而我想的是每一列进行存元素。以下是我在题解区看到的一个大佬总结出来的模板,看了之后可以更加理解滑动窗口👇🏻。这道题我的思路是有了,不过在实现思路的时候遇到很多问题😭。
2025-03-19 23:24:44
392
原创 记录学习的第六天
原本我的思路是想着像删除元素一样做的,但是好像有很多问题🤣while循环中的条件没写好,然后关于头指针中也有元素,需要单独判断。一开始写的时候其实思路跟题解的思路是差不多的,进行简单的模拟判断就可以了,不过我漏了判断1的情况。这道题没啥思路一开始,看了题解还是觉得很神奇,到底咋想出来的啊。1.首先设A到相交点为x,B到相交点为y,相交点到末尾为z。说实话,没啥思路,一开始还想着再搞一个链表来存,太傻了🤣。然后下面是我看了题解之后写的↓。挺难的一道题的,对于我来说。以下是我一开始的代码↓。
2025-03-18 23:41:02
551
原创 记录学习的第五天
可以假设a为出现次数最多的数,计为1。b为出现次数最少的数,计为-1。之后搞了一下力扣周赛,不过根本做不了一题😭下午看了题解才懂了一点,不过还是有点懵。还是由每日一题开始一天的做题时光。不过今天的每日一题有点难度哇🤔好像要用到DP。这道题是我好不容易独立想出来的一道,不过用的是暴力。总之,今天遇到的问题很多,明天仍需努力学习。这道题也是比较复杂,要用到背包思维。
2025-03-16 23:35:44
458
原创 记录学习的第四天
这个有点复杂,我是看了一下题解才明白的。大致就是要创建一个哑指针,因为头指针有可能被删除。之后的遍历中使用循环。这个还是比较简单的,不过不要忘记是空表的情况就可以了。比较简单的一道题,根据题意模拟就可以了。老规矩,首先还是力扣的每日一题。
2025-03-15 23:17:41
136
原创 记录学习的第三天
比较简单的一道题,不知道为什么会评定为中等题😳,直接for循环判断每一个元素,然后用变量max存储最大值就可以了。之后做了一道链表题目,这道题目真是神奇,用到了递归,太牛掰了。1.用两个循环进行暴力,使用i来进行分割(暴力解法)2.然后开始逐步增加左的元素个数,并且进行比较。今天也是老规矩,先做了力扣的每日一题。2.如果为奇,那么最后一个下标为偶数。3.如果为偶,那么最后一个下标为奇数。1.先判断字符串的长度的奇偶性。解答如下:(注意边界处理问题)1.先规定左为一个元素的情况。3,最后右还剩下一个元素。
2025-03-14 23:10:28
303
原创 记录学习的第二天
这道题其实跟昨天和今天的每日一题很像的。接着只要判断每一个字符串的开头和结尾的字符是否做set中出现(即是否是元音字母即可)。今天首先做了力扣的每日一题,跟昨天的题目一样,不过我用了昨天的暴力法通过不了,超时了。🙃看了题解,要用到滑动窗口的知识🤔不过我还不太理解。这道题就很简单了,根据ASCII值加减就可以了。3.后一个字符也不为数字就直接输出,后一个字符为数字就循环输出。之后做了力扣的新动计划里有关ASCII值的题目。2.如果不为数字即判断后一个字符是否为数字。之后还是看了看昨天遗留的蓝桥杯题目。
2025-03-13 23:00:53
294
原创 记录学习的第一天
我是一名在读大一学生,这是我的第一篇博客,以后也会继续坚持写博客来记录我的学习历程。主要是掌握使用vector怎么表示矩阵(二维数组),以及怎么计算它的行数和列数。1.保证每个元音字母都至少出现一次,因此使用set集合来进行比较。2.恰好出现k个辅音字母,因此用一个变量来进行计数,和k进行判断。今天是2025年3月12日,距离今年的蓝桥杯比赛还有一个月。也在洛谷中看了两道蓝桥杯入门题目。之后做了两道新动计划里面的题。今天首先做了力扣的每日一题。然后做了两道链表题目。
2025-03-12 23:09:42
479
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人