模板
文章平均质量分 79
Jiachen Yu
2015 - 2019 杭州电子科技大学 计算机本科
2019 至今 Airbnb 后端工程师
展开
-
高斯消元模板
高斯消元模板,有解无解以及无穷组解的情况都有考虑原创 2016-05-18 10:27:56 · 926 阅读 · 0 评论 -
HDU 4827 Cycle Cocycle 01高斯消元 bitset加速 模板
题目链接http://acm.hdu.edu.cn/showproblem.php?pid=4827题意有一个n个点m条边的图,你要给每个点一个0或1的标号,使得每个点与偶数个相同标号的点之间有边。如果有多解输出任意一组。 题目保证一定有解。思路其实是sjt提醒我这题是高斯消元我才想到思路的,而且想了很久,自己觉得询问方案数,以及代数系统是模2的剩余系的题目,可能和高斯消元还是有一点关系把(比如比原创 2017-07-20 21:01:24 · 725 阅读 · 0 评论 -
某些排序问题中元素大小比较的化简以及传递性证明
写这篇博文的原因是因为这个星期遇到了两次这种问题(什么样的排序问题下文马上就说),一开始对题解用到的化简非常的不明白,所幸jxt又教了我为什么,所以自己在这里记下来,以备忘QAQ问题描述刘汝佳的《算法竞赛入门经典训练指南》(白书)2012版的第2页说到了UVa 11729,题目大意就是有n个任务,布置任务的时间为Bi B_i ,部下去执行任务的时间是Ji J_i ,问如何安排布置任务的次序使所有原创 2017-07-07 12:13:56 · 924 阅读 · 0 评论 -
UVA 11549 Calculator Conundrum Floyd判圈算法 Brent判圈算法 相关性质及证明
简介了 Floyd判圈算法 Brent判圈算法 的 相关性质及证明原创 2017-07-20 10:27:25 · 1388 阅读 · 0 评论 -
splay 伸展树小结
其实一开始学习伸展树的时候比较艰难(其实还是自己太菜了QAQ),一个原因是找不到可以入门的水题,还有一个原因是网上其他博客说了很多splay的原理,代码实现却没讲的特别多。然后自己算是小结了一个模板吧,就记在这里 我最开始参考的是cxlove的代码,然后自己改了改,想看他代码的可以直接百度一些splay的题,很多题目第一条结果就是他的博客splay的原理英文好的同学可以直接看一下wiki原创 2017-01-29 19:07:12 · 654 阅读 · 0 评论 -
手动实现双指针式的单调队列
有时候我们有这样的需求:得到一个[L, R]区间的最值,并且这个区间的两个边界指针是不断朝一个单方向移动的,这时手动的O(n)优先队列(就是单调队列)就能满足需求了自己写在这里给自己参考,其实这东西已经烂大街了吧QAQ#include using namespace std;#define MP make_pairtypedef pair P;const int MAXN =原创 2017-01-17 16:36:44 · 528 阅读 · 0 评论 -
树的遍历
这是一篇不知所以然的方法总结……因为昨天做了cf379的e,里面用到了O(n)求树的直径的方法,然后自己感觉这个和树分治里面寻找重心的方法很像,傻傻地来总结一下。树有很多特殊性质,所以很多时候求树的某信息时可以用到O(n)的遍历算法?大体套路是:选择某个点作为根节点,遍历树遍历树的同时记录每个节点的各个方向上需要统计的信息处理信息,得到所求结果,储存起来,供其祖原创 2016-11-17 21:49:54 · 324 阅读 · 0 评论 -
逆波兰表示法 Reverse Polish notation,RPN
逆波兰记法中,操作符置于操作数的后面。例如表达“三加四”时,写作“3 4 +”,而不是“3 + 4”。如果有多个操作符,操作符置于第二个操作数的后面,所以常规中缀记法的“3 - 4 + 5”在逆波兰记法中写作“3 4 - 5 +”:先3减去4,再加上5。使用逆波兰记法的一个好处是不需要使用括号。例如中缀记法中“3 - 4 * 5”与“(3 - 4)*5”不相同,但后缀记法中前者写做“3 4 5 *原创 2016-11-28 21:50:14 · 2419 阅读 · 0 评论 -
树的Hash方法?
写这篇博文的主要还是因为自己菜得抠脚…………弱校联盟的十一专场的第三天是JAG Practice Contest for ACM-ICPC Asia Regional 2016,其中的E题大意是给一颗有根树,问有多少对子树每个深度的节点数都相同。从长春回来之后自己一直不是很在状态,错把题意当成了问有多少对子树完全同构,然后懵逼三个小时,事后去网上查找树同构的资料,回想起这题问的不是树同原创 2016-10-24 20:57:23 · 1203 阅读 · 0 评论 -
简陋hash算法
没怎么见过别人用过这个hash的方法吧,大概有些时候一个set就可以解决了……自己只是无聊,有一次看到了别人用类似前向星的方法来进行hash,觉得很好玩,然后自己写了一个可行的前向星结构体进行hash。恩恩,无卵用#include#includeconst int MOD=2711827;typedef long long LL;struct Hash{ LL val; int n原创 2016-07-12 15:36:57 · 437 阅读 · 0 评论 -
树上 分块 莫队 题型小结 加 题集
前言最近接触到了树分块(大三才接触到了QAQ),然后打算总结下……普通莫队算法简单回顾一下普通的莫队算法,莫队算法是用来解决区间询问的算法,其把区间分成n√\sqrt n份,每份的大小是n√\sqrt n。把所有询问按其左端点所在区间为第一关键字,右端点按第二关键字排序,然后依次移动左右指针,处理相关询问。算法的时间复杂度在于当前区间的左右指针移动。左指针每次只会在块内移动,复杂度为O(q∗n√)O原创 2017-09-26 19:13:41 · 696 阅读 · 0 评论