
蒟蒻sheep的刷题小集
文章平均质量分 80
坚持每日写至少一个题目的量,前提是如果没有发其他博客的情况下!
sheep.ice
加油!
展开
-
前缀和以及哈希表优化
最近在刷题的时候,遇到了一些前缀和结合子数组的题目,这些题目,有一个共同的特性,就是说,刚开始都能够想利用前缀和进行优化,然后再结合子序列的左右端点进行枚举,最后确定哪一个区间或者哪一些是能够满足我们的题目要求,但是有一个问题就是,我们在枚举区间的两个端点的时间复杂度是O(n2)的,所以一旦题目数据给的特别大的时候,就会过不了,这个时候就需要利用题目的相关性质结合哈希表解题,把时间复杂度降到O(n)以下,就可以过了,这里整理了相关类似的题目,此专题也会持续的更新…原创 2022-09-02 11:22:47 · 699 阅读 · 5 评论 -
我真的理解了背包dp问题吗?
正如标题所说,再次复习背包相关的dp问题的时候,才发现以前理解背包dp问题太过于用自己的想象力,终于好好的写了一下有关背包dp的一些推导的过程!原创 2022-08-11 13:38:45 · 380 阅读 · 0 评论 -
状压dp和状态机dp题目汇总(持续更新)
这一篇博客总结自己在学习状态压缩dp时候的一个题目汇总吧。这里主要分为两块吧,一个是状态机模型,另外就是状压dp,因为两个都是由某一个状态转移到另外一个状态,所以整合在一起,也能更加的对状态到状态之间的转移有个比较好的一个逻辑内联吧。...原创 2022-08-09 18:15:12 · 502 阅读 · 0 评论 -
线性DP题目汇总(持续更新)
此篇章主要整理一些关于线性dp的题目,很多题目其实都可以被挂上线性dp的标志,比如最熟悉的最长上升子序列啊,最长公共子序列啊等等,并且线性dp在自己写力扣周赛的题目的时候,真的会时不时出几道,然后刚好利用这些题目加上dp分析的方法,把题目好好写一写。...原创 2022-08-09 18:13:40 · 2951 阅读 · 0 评论 -
你知道图论的spfa吗?
对于之前有写到的Dijkstra算法,我们发现他只能用来计算边的权值为正的情况,这其实也就是为什么我们需要开一个st数组,对于一个已经被更新过的点来说,他一旦用于更新其他点的时候,我们就不需要再考虑再利用这个点再次更新其他的点。但是呢,如果点之间的边是负值的时候,就必须去遍历一下所有的边,因为存在负值的时候,负数加正数是会把距离缩短的,所以呢就可以利用遍历所有边的办法去更新点到原点的距离。......原创 2022-07-28 18:40:14 · 238 阅读 · 0 评论 -
你知道图论的Dijkstra吗?
本篇开始进行有关图论Dijkstra的题目整理,首先会整理两个模板,针对dijkstra的朴素版本和优化版本,此系列也会一直的更新,对于之后做到相关的题目,会放到此专题当中!而对于这个算法来说,一般求的是对于一些有向图,从某个点走到另外的一个终点不同路径的最小距离,注意此时有向边的权值必须为正数才行!......原创 2022-07-28 18:39:39 · 122 阅读 · 0 评论 -
离散化操作
一、离散化操作什么是离散化操作,这里给一个简单的解答。假设给你一个数组,元素有1,2,200,30000,400000。按照元素的个数,将最终的数组变成1,2,3,4,5的操作就是离散化。离散化的操作有什么好处呢?如果数据非常大,但是元素的个数非常小。我们离散化操作就会节省空间,同时通过这样的操作能够让我们优化时间复杂度!二、实现方法为了满足这样的要求(假设有n个数),我们只需要让每一个数对应一个下标,而这个下标就是离散化他对应的区间[1,n][1,n][1,n]里面的某一个数!这里主要采用c原创 2022-05-01 18:27:30 · 495 阅读 · 0 评论 -
AcWing刷题1
一、前言最近发现一个算法题目的宝藏平台,上面的题目其实都是比较偏向应用题了,所以可能更适合用来提高自己笔试的能力。在这里还没有入口的uu们可以在这里看一看哦:AcWing刷题网站今天其实做了上周的周赛的一个题目,才发现自己很多基础的算法模板都没有掌握,所以只能说我算法还是没有真正的入门吧!今天其实也少稍微的学习了一下,关于区间合并的一个模板问题,题目描述如下:二、题目描述三、思路本题的思路需要一些推导,也不是特别难,我们可以看到假设a数组中的ai=aja_i = a_jai=aj的话,那么由原创 2022-04-26 19:57:54 · 3470 阅读 · 1 评论 -
力扣刷题5
一、前言sheepice的刷力扣篇章,虽然现在比较忙,但是如果有空,且写到一些比较有启发的力扣题的时候希望能够发一点点题解,这些题解的灵感来源于我自己看了很多神犇的题解,真的会很有收获。sheepice的优快云地址:大家感兴趣也可以去里面,说不定能学到一点东西哦!二、数位dp初刷三、思路这题其实如果用我们高中学的组合的思想,可以做。因为他本身就是一个组合的题目,也就是说,最简单的思路就是,分析不同位数情况下构成的小于n的情况。所以很容易得到,一共只有两种情况情况一:构成的数字比要求数字的位原创 2022-04-14 18:25:43 · 133 阅读 · 0 评论 -
力扣刷题4
一、前言sheepice的刷力扣篇章,虽然现在比较忙,但是如果有空,且写到一些比较有启发的力扣题的时候希望能够发一点点题解,这些题解的灵感来源于我自己看了很多神犇的题解,真的会很有收获。sheepice的博客地址:大家感兴趣也可以去里面,说不定能学到一点东西哦!二、力扣的某“简单题”这个题目其实说真的,刚开始觉得真的挺难的,然后看到是个简单题我就知道数据的范围肯定给的非常的小,果不其然,数据范围只给了50,哈哈哈,所以第一次做这个题目的时候,这不就是简单的暴力枚举的题目吧,因为这题是三叶姐给到的“原创 2022-04-12 21:35:56 · 162 阅读 · 0 评论 -
力扣刷题3
一、前言sheepice开启新的篇章了,虽然现在比较忙,但是如果有空,且写到一些比较有启发的力扣题的时候希望能够发一点点题解,毕竟三叶姐坚持了那么久,也给我有了很好的榜样作用!sheepice的博客地址:大家感兴趣也可以去里面,说不定能学到一点东西哦!二、leetcode每日一题今天的每日一题难度不大,主要想记录一下关系哈希表的容器相关写法吧!①思路:采用哈希表记录下来所有出现过的数和对应的次数,然后利用绝对值大小进行排序(这个排序可以方便我们对表进行一次遍历,只需要看arr[i]对应的ar原创 2022-04-05 20:52:16 · 220 阅读 · 0 评论 -
力扣刷题2
一、前言sheepice开启新的篇章了,虽然现在比较忙,但是如果有空,且写到一些比较有启发的力扣题的时候希望能够发一点点题解,毕竟三叶姐坚持了那么久,也给我有了很好的榜样作用!sheepice的优快云地址:大家感兴趣也可以去里面,说不定能学到一点东西哦!二、leetcode每日一题说实话,这一题在刚开始用双指针的时候,是有些地方没有想明白的,比如当最后的右指针移动到某个位置把k次数用完后,左指针应该移动到哪个位置,所以开始死磕了好久,最后也是积累了这样一种滑动窗口的办法吧。其实就是不要等右指针原创 2022-04-05 20:50:34 · 276 阅读 · 0 评论 -
力扣刷题1
一、前言sheepice开启新的篇章了,虽然现在比较忙,但是如果有空,且写到一些比较有启发的力扣题的时候希望能够发一点点题解,毕竟三叶姐坚持了那么久,也给我有了很好的榜样作用!sheepice的优快云地址:大家感兴趣也可以去里面,说不定能学到一点东西哦!二、leecode每日一题①首先是今天的每日一题,题目如下:②题目解答(1)//版本1,逐步的进行判断class Solution {public: bool hasAlternatingBits(int n) {原创 2022-04-05 12:55:08 · 598 阅读 · 2 评论 -
树状数组初学
一、树状数组的初学之前学习过前缀和和差分的一些知识就觉得挺神奇的,然后昨天刷到力扣的每日一题之后发现,好像树状数组在多区间的修改和查询方面很神奇,包括之后要学习的线段树(能解决所有树状数组的问题)可能会更加有收获吧。二、一些小小的理解①lowbit的理解在线段数组里面有这么一个重要的函数,也是能够构造整个树状数组的核心吧!代码只有一行,但是对于我这种萌新来说,刚开始还是很难理解的。代码如下://寻找一个数最低位的1int lowbit(int x) { return x &am原创 2022-04-05 12:45:00 · 1013 阅读 · 0 评论 -
最短路径及拓展
目录一、前言二、路径(1)三、路径拓展解题误区解题全过程最终运行的结果四、水话一、前言最近有开始再刷三叶姐的leetbook《最短路径问题》,小白可能得重新地进行一些系统化的学习了。虽然里面有一些题以前是做过的,但是还是会有一部分的问题。因为已经有好久没有发博客了,出于大一下的课程有点多,希望从现在开始能够每个周末进行博客的发送吧,还有,个人的博客网站也已经搭建完成,以后那个网站可能会分享一些自己慢慢学后端的文章吧!点这里:sheepice's Blog。今天主要..原创 2022-03-26 13:43:42 · 1152 阅读 · 0 评论 -
四个数之和+双指针大法
四数之和原创 2022-01-16 15:41:44 · 530 阅读 · 0 评论 -
删除原字符串的子串(c++内置find函数好啊)
删除原字符串的子串,指针的解法+STL内置函数find的解法!!原创 2022-01-08 12:49:09 · 705 阅读 · 0 评论 -
结构体,sort(贪心算法)洛谷每日一题(洛谷P2240)
深基的题目+sort+结构体排序+贪心思想而并非背包原创 2022-01-07 12:35:54 · 1000 阅读 · 0 评论 -
sort函数讲解+CF.1684B一道数学理解题目
CF每日一刷!sort函数的妙用以及常用的解答!原创 2022-01-06 12:03:25 · 706 阅读 · 0 评论 -
贪心(按照下标排序)
一、前言继续划水更新题解吧!二、题目详情三、输入输出样例四、题目解读这一题属于一个排序的题目。而且里面带有贪心的思想,简单的概述此题就是说,如果给你一串数字1-n;例如1-8,然后每个数字下面有0和1的区别,那么为了满足题目的意思呢!就是需要把是0的分为一组,把1的分为一组,然后在0的那一组里面的数字要比较小,在1那一组的数字要比较大。例如题目给的样例。那么分好组后呢?依据题目意思,要让最后分别对应下来的差值更加小,我们不难想到要利用贪心的思想。至于这里的贪心很好理解..原创 2022-01-05 19:39:21 · 516 阅读 · 0 评论 -
深搜(DFS)刷题(一)
DFS每日一刷,第一次刷这种难度题目一次AC,AC居然是happy new year!!CF网站有心了鸭!我有在好好的复习英语哦!原创 2022-01-04 19:42:33 · 3650 阅读 · 2 评论 -
二分模板刷题(一)
一、前言因为这几周是期末周了,但是自己确实又不想鸽下博客不管,所以干脆这几天就是放一些简单的模板题目,仅供大家熟悉之前所写的一些模板套路,今天也是很久以前拿到手的一个洛谷题目,第一次刷那个题目的时候,因为是用二分,但是由于自己对二分边界的处理依旧不是特别的熟悉,所以之前做那个题目的时候第一次交还没AC呢,但是这次已经能够非常得心应手的用之前所教的模板写出来了这一题了,所以希望到这的读者,如果不熟悉本蒟蒻的模板,可以点击这里回去复习一下!因为这题目很容易读懂,所以在此不加以分析了!二、题目描述原创 2022-01-03 14:38:15 · 426 阅读 · 0 评论 -
组合数的计算
有关组合数的计算,里面包含快速幂还有取模运算的相关分析,然后又是划水水的一天天原创 2022-01-02 16:01:33 · 6405 阅读 · 0 评论 -
最长公共上升子序列以及二分技巧
最长上升子序列何谓最长上升的子序列呢?首先我们要明白,对于一串数字来说,子序列必须要有顺序的描述,例如54321,543是一个子序列,421同样也是,但是4231就不是子序列了,因为里面的顺序与原串已经不相等了。而要求的是上升的子序列,也就是从头到尾,序列的值依次增大,例如12345,它本身就是一串递增的序列,那么理所当然最长上升子序列的数量便为5。我们看下面的一个例子。相信大家看完例子之后,便对最长上升子序列有了很深刻的了解,而了解这一个名词,并且知道如何求一个字串的最长上升子序列,对于后面要..原创 2021-12-26 20:33:26 · 1852 阅读 · 3 评论 -
位运算子集刷题(一)
位运算子集刷题原创 2022-01-01 21:00:07 · 4396 阅读 · 0 评论 -
哈希表的使用刷题
洛谷P1381 单词背诵的题目原创 2021-12-31 15:28:01 · 310 阅读 · 0 评论 -
字符串哈希刷题(一)
洛谷P2957 [USACO09OCT]Barn Echoes G字符串哈希题原创 2021-12-30 17:26:10 · 700 阅读 · 0 评论 -
【leecode1705. 吃苹果的最大数目】贪心和二元优先队列
leecode每日一游原创 2021-12-24 18:21:53 · 920 阅读 · 1 评论