随笔分类 -  OI || algorithm

摘要:一.同余方程的判定 我们知道同余方程是形如 ax ≡ b (mod n) 的东西,用文字表达就是: ax和b除以n的余数相同 那么,经过如下推理:(用=代替恒等于) ax=b (mod n) ax=b+n*x2 (转化为b加上n乘上某个数等于ax) ax-n*x2=b(移项得) a x1 + n x 阅读全文
posted @ 2019-01-20 21:56 dudujerry 阅读(1882) 评论(0) 推荐(1) 编辑
摘要:不太优美但是有注释的版本: 比较优美但是没注释的版本: 树剖理解容易,需要注意的是题目如果给的是双向边,e数组需要开两倍于边数 阅读全文
posted @ 2018-12-28 20:00 dudujerry 阅读(358) 评论(0) 推荐(0) 编辑
摘要:最近在看博弈论,SG函数,所以什么是mex呢 然后百度了一下得到: mex(S) 的值为集合 S 中没有出现过的最小自然数。例如,mex({1,2}) = 0、mex({0,1,2,3}) = 4 阅读全文
posted @ 2018-12-07 20:58 dudujerry 阅读(1371) 评论(0) 推荐(0) 编辑
摘要:菜鸡又要爆零了 辛辛苦苦背板子结果考时候脑子一片空白 第一题线段树调了半小时 看完三道题两道写暴搜一道写暴力(说是暴搜,觉得更像写了个背包) 别提暴搜还忘记剪枝. . . . . . 我觉得考场上最菜的就是我了 周围都是大佬打键盘,只有我还在苦苦思索 带了一瓶咖啡喝掉一半还是很困 昨天晚上10:14 阅读全文
posted @ 2018-11-10 15:14 dudujerry 阅读(123) 评论(0) 推荐(0) 编辑
摘要:#include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; const ll INF=99999999; int main() { ios_base::sync_with_stdio(fa... 阅读全文
posted @ 2018-11-07 16:29 dudujerry 阅读(107) 评论(0) 推荐(0) 编辑
摘要:代码: struct NODE{ int to; int nxt; int c; }node[MM];//链式向前星 int head[NM],lcnt=1; void add(int a,int b,int c){ node[lcnt].to=b; node[lcnt].c=c; node[lcn 阅读全文
posted @ 2018-11-06 15:57 dudujerry 阅读(1301) 评论(0) 推荐(0) 编辑
摘要:代码: #include<iostream> #include<vector> #include<cstdio> #include<queue> #include<map> #include<cstdlib> #include<cmath> #include<algorithm> #include< 阅读全文
posted @ 2018-11-06 15:29 dudujerry 阅读(179) 评论(0) 推荐(0) 编辑
摘要:代码: #include<iostream> #include<vector> #include<cstdio> #include<queue> #include<map> #include<cstdlib> #include<cmath> #include<algorithm> #include< 阅读全文
posted @ 2018-11-06 14:08 dudujerry 阅读(290) 评论(0) 推荐(0) 编辑
摘要:树状数组主要用于解决查询修改等区间操作的问题。 其实它也是线段树的一部分:线段树能做的,树状数组不一定能做;树状数组能做的,线段树一定能做(可能会比较慢)。 那么,树状数组的优点: 1.代码简洁好记。 2.由于使用位运算,跑得快。 当然也有缺点: 1.相对来说难以理解。 2.解决问题的广度不如线段树 阅读全文
posted @ 2018-10-26 18:50 dudujerry 阅读(302) 评论(0) 推荐(2) 编辑
摘要:嗯...至于输入可以参考 https://www.luogu.org/problemnew/show/P3372 这篇代码过了 让我介绍一下线段树: 各位,这就是一棵线段树。 对于每个非叶节点,其左儿子右儿子分别维护它一半的区间。 例如,a负责[1~8]区间,则其左儿子l负责[1~4],右儿子 而我 阅读全文
posted @ 2018-10-25 15:30 dudujerry 阅读(262) 评论(0) 推荐(0) 编辑
摘要:输入: ABCDABTBD_TISABCDABCABCDABC q为当前nxt处理的模版文本串下标; k为“失配时去哪里”,详情请看注释。 我是求完nxt的分界线 q为当前文本串判断到哪里; nxt为“失配时去哪里”。 输出:nxt[q(1)]=k(0);nxt[q(2)]=k(0);nxt[q(3 阅读全文
posted @ 2018-09-15 22:12 dudujerry 阅读(400) 评论(0) 推荐(0) 编辑

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