![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
【算法】基础算法
文章平均质量分 59
相关
oier_Asad.Chen
坐标湖南,一名Oier
展开
-
【OI学习笔记】基础算法-前缀和与差分算法
前缀和与差分算法的定义、本质和应用说明及例题讲解原创 2023-06-10 00:35:35 · 616 阅读 · 0 评论 -
【洛谷题解/NOIP2000提高组】P1019 单词接龙
题目概况链接:https://www.luogu.com.cn/problem/P1019难度: 普及/提高-题目分析针对此题,我们知道是寻找长度最长的龙,那么如何拼接?情况必然有很多种,我们可以考虑使用最朴素的DFS来解决。有几个要点盘一下:设小串为m,当前龙为now,副串为temp,存储各单词的数组为a[MAXN]要点1: 每个单词都最多在now中出现两次(用一个vis数组记录)要点2: 另外相邻的两部分不能存在包含关系(接口不能等于m.size())要点3: 拼接字符串(必须用一个副串原创 2021-08-09 09:25:30 · 1601 阅读 · 1 评论 -
计蒜客题解-T1259最短前缀
题目概况链接: https://nanti.jisuanke.com/t/T1259难度: 普及/提高-(计蒜客评级普及T3,但我认为T2难度)题目分析请在自行思考后阅读本题解 ,比较详细,请耐心看完题意清晰明了,就是求出每个单词的最短的前缀,且没有二义性,好了,要点出来了:1. 最短 2. 无二义性正解我认为是贪心找出某个单词只出现过一次的字串,为什么呢?我解释一下:1. 每个单词我们只要按子串长度由短到长存储就能确保寻找到的无二义性的字串是最长的。2. 如果这个单词从下标0到原创 2021-08-11 17:21:50 · 261 阅读 · 0 评论 -
计蒜客题解-T1265补提交卡
题目概况链接: https://nanti.jisuanke.com/t/T1265难度: 普及/提高-(计蒜客评级普及T3)题目分析简化题目: 100天内,有n天没提交,但有m张补提交卡可以用在m天上,用完它们,最长可以有多少天连续涉及知识点: 枚举算法解题思路:我们可以通过枚举第一次用补提交卡的那一天,然后往后推m - 1次,计算其连续天数,再取最大值。但通过多次WA 思考,我们得知m可能为0,m也可以多于未提交的n天数,所以逐情况考虑m的情况:1. m <= n,按上述思路即可原创 2021-08-12 15:02:14 · 182 阅读 · 0 评论 -
计蒜客题解-T1180实数加法
题目概况链接: https://nanti.jisuanke.com/t/T1180难度: 普及/提高-(计蒜客评级普及T3)题目分析简化题目: 给定两个实数,相加即可**涉及知识点:**高精度加高精度算法以及一些玄学操作解题思路:私以为,这道题本质上就是考察PJT2难度的 高精度算法另加一些 小数的处理,故我们重点讨论如何处理小数:1. 关于相加,我们可以考虑 去掉小数点直接当成两个高精度整数相加。但如果数据1.999+0.1会被当做1999+1,结果并不符合我们的预期,所以需要在加之前原创 2021-08-13 16:19:41 · 188 阅读 · 0 评论 -
【洛谷题解】P2356 弹珠游戏
本人第一篇题解今天闲着没事,随机跳题,然后看到这题,觉得运气爆棚,计蒜客L2时空复杂度的课后原题,微改.首先,这题我们可以知道枚举处理就行,注意点:1.千万要分清每个数组的用途,不要写错!!本蒟蒻就因为b,c数组名调了半天2.注意究竟怎样判断才能正确输出Bad Game!,我么可以定义一个bool flag来记录该矩阵是否有容身之地。代码如下,多多关照:#include <iostream>using namespace std;int a[1010][1010], b[101原创 2021-02-22 23:32:56 · 1276 阅读 · 8 评论 -
【洛谷题解/NOIP2000提高组】P1017 进制转换
题目概况链接:https://www.luogu.com.cn/problem/P1017难度:普及/提高-题目分析一道数学题。首先我们知道,十进制转N进制需要采用除法取余,倒序输出的方法。但是题目中说明:使用的是负进制。它的转换方法和正整数进制相同(详情移步度娘),但我们就会发现一个问题:在C++中取模给出了负数如图,-15 % -7 = -1那问题明了,如何将负数化为非负数?解答: 已知:商*除数+余数=被除数,则样例为 2 * (-7) + (-1) = -15,我们可以把商加上1原创 2021-08-08 22:23:14 · 815 阅读 · 0 评论 -
【洛谷题解/NOIP2000普及组】P1022 计算器的改良
题目概况链接: https://www.luogu.com.cn/problem/P1022难度: 普及/提高-题目分析一道数学题,考察细节上的问题,题意即为解一个一元一次方程。我们知道此类方程可以化解为kx + b = 0的形式,可得x = -b / k(朴实无华)要点:1. 方程分为左边和右边,为了区分,我们定义now用于记录,左边为1,右边为-1(移项变号)2. 分情况考虑符号、数字的编号,为了防止形如-x/+x/-0x这样的毒瘤,我们用r来记录有没有数字输入3. 最后一个输入的字符原创 2021-08-09 13:47:36 · 1315 阅读 · 1 评论