随笔分类 -  OIer的算法乱写

写一写NOIP/NOI/CTSC的通用算法和模板
摘要:树链剖分主要思想 RT,就是把一颗有根树按照dfs序放在一个连续线性数组当中,用数据结构维护区间操作 通常采用树状数组、线段树(平衡树qwq我不会)等维护 剖分的原则:链尽可能长(目的:减少上调操作) size[x]表示以x为根节点的子树,有节点个数 重儿子:son[x]在x的诸多儿子中size[x 阅读全文
posted @ 2018-08-28 10:56 ljc20020730 阅读(172) 评论(0) 推荐(0)
摘要:题目链接: 洛谷P3389高斯消元【模板】 提醒:在cnblog博客或是luogu博客看此文更优哦,戳这里 现在有一个三元方程: 很显然如果你有兴趣解这个方程组的解为 如果这道题出在数学试卷上相信你一定会做,三元一次方程组嘛! 那么这里就写个程序模拟你的运算过程. 为了书写方便,这里化为矩阵的写法: 阅读全文
posted @ 2018-08-10 14:58 ljc20020730 阅读(216) 评论(0) 推荐(0)
摘要:几个概念或引理 概念1:数集的异或和:定义一个无符号整数集合S(注意,我们接下来讨论的集合均指由无符号整数为元素构成的集合),则S的异或和就是S中所有元素互相异或的结果. 概念2:张成:子集Ti ⊆ S且子集Ti异或和组成的集合K就是数集S的张成,记做K=span(S)就可以理解为S中取任意多个元素 阅读全文
posted @ 2018-08-09 11:39 ljc20020730 阅读(194) 评论(0) 推荐(0)
摘要:由于图论的算法不太熟悉,今天早上考了一道NOIP原题打爆了。。所以我要好好学下最小环。。 最小环的算法有并查集、trajan、反图。这里从简单的开始写 反图:设G为原图,F图为反图。 step1:对G遍历记录每个点的退出顺序dfn[] 对于下面这个图遍历序列为1 2 3 5 (5 3 2 )1 3( 阅读全文
posted @ 2018-07-24 15:45 ljc20020730 阅读(154) 评论(0) 推荐(0)
摘要:题目模板:最短路 https://www.luogu.org/problem/show?pid=3371 千年不过的不用指针的spfa;原来各位dalao是骗我的!根本不用ff数组来判重!加上这题目pas题解比较少就来谈谈5种AC的思路(顺便总结一下);①floyd算法 时间:O(n^3);空间:O 阅读全文
posted @ 2017-10-02 20:07 ljc20020730 阅读(732) 评论(0) 推荐(0)
摘要:背包型dp,但是没有看清数据范围差点认为是水题了,(然后诡异的拿了20分)标解是:2进制优化,比较简单把每一类物品看做若干个相互独立的物品,放在一个另外的数组里,然后全局跑一边01就可以。主要思想是:将一种物品分成1、2、3..一份,然后跑01(01的复杂度低啊!)如果难以理解的话不妨举个例子:如2 阅读全文
posted @ 2017-09-25 16:54 ljc20020730 阅读(292) 评论(0) 推荐(0)
摘要:https://www.luogu.org/problem/show?pid=2704 题意: 炮兵在地图上的摆放位子只能在平地('P') 炮兵可以攻击上下左右各两格的格子; 而高原('H')上炮兵能够攻击到但是不能摆放 求最多能摆放的炮兵的数量 就是这个意思。 难度提高,弱省省选 一开始是想写df 阅读全文
posted @ 2017-08-17 18:11 ljc20020730 阅读(175) 评论(0) 推荐(0)
摘要:【题目描述】 WZK 最近收到了一个任务。 给出一个 n 个数的序列,为 A0,A1,„„,An-1,循环移动 k 位之后,这个序列就变 成了 Ak,Ak+1,„„,An-1,A0,A1,„„,Ak-1。一种优秀的循环移动是,对于任意的 前 i(1<=i<=n)项和都满足不小于零。请给出这个序列优秀 阅读全文
posted @ 2017-08-17 18:11 ljc20020730 阅读(264) 评论(0) 推荐(0)
摘要:状态: fmax[i,j]//表示前i个数分成j个部分的最大值 fmin[i,j]//表示前i个数分成j个部分的最小值 边界:fmax[i,1]:=(sum[i] mod 10+10) mod 10(sum[i]为前i个数的总和);fmin[i,1]:=(sum[i] mod 10+10) mod 阅读全文
posted @ 2017-08-17 18:10 ljc20020730 阅读(135) 评论(0) 推荐(0)
摘要:最近正儿八经的学习了dp,有一些题目非常明显看出来就是dp了比如说:过河卒、方格取数、导弹拦截、加分二叉树、炮兵阵地更加明显的还有:采药、装箱问题、过河、金明的预算方案。今天来谈谈dp的dp在不在dp中(但在dp范畴)内的应用(简称dp的应用)dp其实可以用贪心来优化,有些基本不可能的情况就可以直接 阅读全文
posted @ 2017-08-17 18:10 ljc20020730 阅读(227) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-08-12 21:54 ljc20020730 阅读(8) 评论(0) 推荐(0)
摘要:Rabin_Karp 哈希通过比较hash值是否相等来比较每个字符串是否相等有概率出错(很小)字符串x1,x2,x3……xk基底e;模数mo;hash=(xk*e^0+xk-1*e^1+......+x1*e^k-1)mod mo注意:①字符映射到数字不要映射到0②基底e>字符种类数③据说mo数为大 阅读全文
posted @ 2017-08-04 16:06 ljc20020730 阅读(583) 评论(0) 推荐(0)
摘要:在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected components)。 Tarjan算法是基于对图深 阅读全文
posted @ 2017-07-21 19:38 ljc20020730 阅读(343) 评论(0) 推荐(0)
摘要:现在才搞懂前向星的遍历,原来是要从后往前的!之后的一切都是以此为基础的。 1.前向星的遍历 看到有一篇blog写的不错:http://blog.csdn.net/acdreamers/article/details/16902023 1 2 2 3 3 4 1 3 4 1 1 5 4 5 那么排完序 阅读全文
posted @ 2017-07-21 09:10 ljc20020730 阅读(186) 评论(0) 推荐(0)
摘要:线段树模板1:https://www.luogu.org/problem/show?pid=3372 线段树模板2:https://www.luogu.org/problem/show?pid=3373 这些都比较基础,就是1或2个lazy标记的时候怎么处理?几乎不用考虑兼容性的问题。 现在这里有一 阅读全文
posted @ 2017-07-20 18:39 ljc20020730 阅读(193) 评论(0) 推荐(0)
摘要:树状数组是一个比较优秀的数据结构,可以在O(log n)的情况下完成一些对数列的维护~~ 而且代码简单易懂,所以树状数组在OI竞赛中对于解决区间问题是十分常用的数据结构 接下来是一些例题: A.校门外的树 题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路 阅读全文
posted @ 2017-07-20 12:49 ljc20020730 阅读(245) 评论(0) 推荐(0)
摘要:问题1:给你一个单词集合,支持添加,删除,询问某个单词出现次数。 问题2:给你一个单词集合,支持添加,删除,询问以某个字符串为前缀的单词个数 阅读全文
posted @ 2017-07-20 11:29 ljc20020730 阅读(363) 评论(0) 推荐(0)
摘要:O(n2)排序 排序算法也就是我们通常说的将一组数据依照特定排序方式的一种算法。 排序算法的输出必须要遵循两个原则: 1.输出的结果为递增数列(递增针对所需的排序顺序而言) 2.输出的结果为原输入的一种排列或重组。 1.冒泡排序 顾名思义就是谁冒泡泡冒的快,上升的就快。 看下图: 相信大家一看 就很 阅读全文
posted @ 2017-07-20 09:16 ljc20020730 阅读(176) 评论(0) 推荐(0)
摘要:石子合并 现在有n块石头,多多要把这n个石头进行合并每一次合并,多多可以把相邻两个石子合并到一起,得分等于两个石头的重量之和。 可以看出,所有的石子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共的得分等于每次合并石头质量之和。求得分最少是多少,最多是多少? (n<=100) 样例输入#1 阅读全文
posted @ 2017-07-18 19:34 ljc20020730 阅读(178) 评论(0) 推荐(0)
摘要:Dp是一个经典算法,而背包问题在dp中是属于dp里的经典; 所以搞dp就是经典中的经典! 现在我这里提供经典的6种背包型dp和具体实现: 1、采药(原版01)https://www.luogu.org/problem/show?pid=1048 n株草药,每株有一个价值和采集时间。最多采集m个单位时 阅读全文
posted @ 2017-07-18 13:33 ljc20020730 阅读(276) 评论(0) 推荐(0)