鹿我所录的博客

记录我在学习C#中的点点滴滴,记录下以备后来人借鉴。

 

10 2020 档案

洛谷P3984题解
摘要:原题: 思路: 事实上,这道题给定的是区间定长以及区间的左端点。 思路的话,接近于“一维扫描线” 从第一个端点开始,向下一个端点跳跃,并计算跳过了多少距离 如果是左端点,压栈 右端点,出栈 仅在栈不为空时计算距离 阅读全文

posted @ 2020-10-25 15:00 鹿我所录 阅读(66) 评论(0) 推荐(0) 编辑

洛谷P3916题解
摘要:原题: 思路: emmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm 这玩意儿不就是一个深搜解决? 一看难度,绿的 行吧看来我把它想简单了 而且深搜确实有些问题 就题面来看,如果进行深搜,就意味着我们要不断地访问同一个点 浪费时间啊 能不能一次求出呢? 思考过后我们发现,显 阅读全文

posted @ 2020-10-25 14:43 鹿我所录 阅读(130) 评论(0) 推荐(0) 编辑

洛谷P3817题解
摘要:原题: 思路: 似乎并没有专门解决这类问题的高效算法,一看规模就更加确定做法是偏向暴力的了 看这道题,实际上就是给一个数列,然后要求数列内每两个相邻的数相加不大于x,问要减去多少 实际上,我们可以看到,每一个数都能影响两个相邻的组合,它前面的和它后面的(除了第一个和最后一个) 既然如此,这个处理就很 阅读全文

posted @ 2020-10-25 14:16 鹿我所录 阅读(108) 评论(0) 推荐(0) 编辑

洛谷P3811题解
摘要:原题: 思路: 没啥思路 已经把思路贴我脸上了 求逆元 这玩意是很重要的东西,一旦涉及到除法取模,就要用逆元转化成乘法来取模 原因是: (a+b) mod c=((a mod c)+(b mod c))mod c (a-b) mod c=((a mod c)-(b mod c))mod c (a*b 阅读全文

posted @ 2020-10-25 09:52 鹿我所录 阅读(67) 评论(0) 推荐(0) 编辑

洛谷P3353在你窗外闪耀的星星-题解
摘要:原题: 思路: 这是我一辈子达不到的文采 好现在思路来了 实际上这个题的意思就是: 求一段固定长度的区间使得总和最大 区间和,没有修改,一看数据还可以,那当然是前缀和啦 在输入数据的时候,在代表天空的数组的对应位置+亮度 然后处理前缀和 再然后遍历区间右端其实无所谓根据W永远是奇数你甚至可以遍历区间 阅读全文

posted @ 2020-10-25 09:27 鹿我所录 阅读(78) 评论(0) 推荐(0) 编辑

洛谷P1057传球游戏-题解
摘要:题目: 思路: 一看,计数的 先考虑一下DP 计数的转移,难度高的一般要经过思考才能得出来 但是难度低的(诸如此道)一般已经在题目中说出来了 重点就在于: 每个同学可以把球传给自己左右的两个同学中的一个(左右任意) 这句话上。 左和右,换成数学表示就是 i-1,i+1 由于题目说是一个环,所以特判一 阅读全文

posted @ 2020-10-18 21:43 鹿我所录 阅读(174) 评论(0) 推荐(0) 编辑

洛谷P1049装箱问题-题解
摘要:题目: 思路: 经典的背包题目 不过比较特殊的是,体积即是价值 求出最大值来之后减去背包容积即可 代码: 没有,太简单了 阅读全文

posted @ 2020-10-18 21:21 鹿我所录 阅读(86) 评论(0) 推荐(0) 编辑

洛谷P1048采药-题解
摘要:题目: 思路: 背包没跑了。 典型的背包题 借此来讲讲背包 最优化的一维背包采用剩余体积作为划分的依据 同时运用滚动数组反向遍历来实现 重要的几个标志: 价值,体积,最值 代码: #include <bits/stdc++.h> using namespace std; int f[1005]; i 阅读全文

posted @ 2020-10-18 21:06 鹿我所录 阅读(125) 评论(0) 推荐(0) 编辑

洛谷P1044栈-题解
摘要:题目: 思路: 我们考虑一下,这道题有哪几个因素能够确定一个状态? ——栈外元素数与栈内元素数 为什么? ——我们考虑一下 栈内元素个数是容易想到的 那么为什么第二维是栈外元素个数? 实际上,在这道题中如果不用它也可以,例如换成栈顶元素 但是这会导致转移极其麻烦 而在使用栈外元素的情境下就变得十分简 阅读全文

posted @ 2020-10-18 18:14 鹿我所录 阅读(153) 评论(0) 推荐(0) 编辑

洛谷P1040加分二叉树-题解
摘要:题目: 思路: 这题在一个细节上很奇怪,它给树是按中序遍历给的 而且只给了中序遍历 这意味着我们可以通过自己的方式来构造这棵树 我们回想一下—— 在中序遍历中,一个根节点的左儿子是? ——这个节点的左边所有 右儿子是? ——右半部分 如果用区间表示呢? ——[i.k-1],[k+1,j] 为什么没有 阅读全文

posted @ 2020-10-18 17:26 鹿我所录 阅读(166) 评论(0) 推荐(0) 编辑

洛谷P1005矩阵取数游戏-题解
摘要:题目: 思路: 记住那两句话: 1.反向思维 2.区间动规的特点在于,大区间包含小区间,小区间推导出大区间 然后我们来看 首先我们可以发现各行是互不影响的,所以可以分开 其次,不管怎么操作,这个序列会变小,而且是连续的 虽然它是取数,但同时对区间造成了影响 于是我们就可以想想方程了 f作为某一行的和 阅读全文

posted @ 2020-10-18 17:13 鹿我所录 阅读(189) 评论(0) 推荐(0) 编辑

洛谷P1004方格取数-题解
摘要:题目: 思路: 我拿过这题一看,方格,下&右 好又是这种,和过河卒差不多 不过这题有点特殊: 1.能走两遍,前一次的路对后一次有影响 2.与过河卒相比,它不是计数,而是求最大值 但是本质上都是一样的 对于第一点,我们可以用多线程的方式解决,也就是同时处理两条路径 对于第二点,无非就是将加法换成了求m 阅读全文

posted @ 2020-10-18 16:47 鹿我所录 阅读(103) 评论(0) 推荐(0) 编辑

洛谷P1002过河卒-题解
摘要:原题: 思路: 显然是计数DP 又是在网格上,又是只能走下和右,思路是很显然的 想要到达这个点,只能由这个点上方和左方的点转移来 方程也很明显了: f[i][j]=f[i-1][j]+f[i][j+1]; 注意特判被马占的点就可以了 代码: #include <bits/stdc++.h> usin 阅读全文

posted @ 2020-10-18 16:30 鹿我所录 阅读(176) 评论(0) 推荐(0) 编辑

搜索
摘要:因为这是十分基础的东西,所以反而有些忽略 写这篇博客,方便复习 搜索,最基础的算法 基础到无法再基础的算法 为了引出搜索,我们不得不说说什么叫做“遍历” 遍历,正如其名,是将所有的可能性全都看一遍 比如把书架上所有的书都看一遍 这就是遍历。 然而,这种单纯的遍历会导致一些问题无法解决 例如,找一条通 阅读全文

posted @ 2020-10-02 20:02 鹿我所录 阅读(164) 评论(0) 推荐(0) 编辑

导航

统计

点击右上角即可分享
微信分享提示