摘要:
学习一下rope做一下笔记.....头文件#include 文件头using namespace __gnu_cxx;变量声明rope x;成员函数size() O(1)放心用.push_back(v) 不解释push_front(v) .....insert(p,v) 在位置p插入元素v. 插入后... 阅读全文
摘要:
AC HDU1693 不能再简单了的插头DP 1 #include 2 #include 3 #include 4 5 #include 6 #include 7 #include 8 #include 9 10 #include 11 #include ... 阅读全文
摘要:
k-d树简单地说就是暴力......暴力大法好...然而我不会.....k-d tree 用输入的点把一个超平面(呃,高维空间)划分成两部分.(k-d树的节点要把它的坐标存下来.)一个点管辖一个高维空间内的区域.比如说一个点v.选择v的第d个维度的坐标(不一定x-y-z-...-x-y-z...轮换... 阅读全文
摘要:
给出一堆点,求一个面积(半径)最小的圆,使得所有点都在它的内部或边界上.随机增量法是这样的....先随机打乱点的顺序......然后,我们假设已经得到了点 $1,2,...,i$ 的最小覆盖圆,我们要求出点 $1,2,...,i,i+1$ 的最小覆盖圆.怎么做? 考虑点 $i+1$ ,分两种情况:1... 阅读全文
摘要:
好神啊好神啊.....大概就是,对于一个询问,我们可以二分答案求出结果的话......那么对于一大堆询问,我们一起二分它们的答案......然后,我们通过某种简化的判定条件来决定询问应该被分到左边还是右边.把当前处理的询问扫一遍,求出应该往左递归的询问和往右递归的询问. 然后把左边的询问堆到一起,往... 阅读全文
摘要:
这是一个坑...给出一棵树.每次询问选择一些点,求一些东西.这些东西的特点是,许多未选择的点可以通过某种方式剔除而不影响最终结果.于是就有了建虚树这个技巧.....我们可以用log级别的时间求出点对间的lca....那么,对于每个询问我们根据原树的信息重新建树,这棵树中要尽量少地包含未选择节点. 这... 阅读全文
摘要:
发现现在完全不会写了QAQ虽然考得跟HanoiTower一样少但是还是总结一下吧.....表达式的处理方法:前缀和后缀很简单呐....就讲中缀啦啦啦......首先,我们要把数字和符号分开. 如果原题只给了符号没给数字(或字母),我们需要手动加上去.具体的添加规则:如果当前符号c满足以下条件之一: ... 阅读全文
摘要:
思想还是很重要的....首先,次小生成树就是用一条边替换最小生成树中的另一条边. 代价就是两条边的权值差.证明:我们把"在树上连一条新的边形成一个环,再删掉那个环上一条不是新边的边"的操作叫做边的替换.替换的代价就是新边权减掉删掉的那条边的边权.首先,最小生成树通过若干次替换总能够变成次小生成树,这... 阅读全文
摘要:
ManacherAC BZOJ 2565 1 #include 2 #include 3 #include 4 5 #include 6 #include 7 #include 8 #include 9 10 #include 11 #include 12... 阅读全文
摘要:
有很多奇妙的题.....题目VJ上做了些.近期在POJ和HDU上做一些题,参考 http://blog.csdn.net/shahdza/article/details/7779389HDU 1285 裸题不讲=w=很久以前用Vector建图的时候就A了......HDU 2647 就是判断一下是否... 阅读全文
摘要:
感觉所谓Astar并不是单纯的Astar....能够直接按照优先队列的出队顺序拿到前k短路真神奇......感觉上大概可以证明,如果当前拿到了第k短路那么之前的k-1短路都已经拿到了?AC POJ 2449裸的第k短路. 1 #include 2 #include 3 #include ... 阅读全文
摘要:
数位DP的题曾经写过,但是就是各种混乱不堪=w=这次写的记忆化搜索....AC BZOJ 1833 1 #include 2 #include 3 #include 4 5 #include 6 #include 7 #include 8 #include 9 ... 阅读全文
摘要:
好像很水....但我就是想不到QAQ.......AC VIJOS 1055 奶牛浴场 1 #include 2 #include 3 #include 4 5 #include 6 #include 7 #include 8 #include 9 10 #i... 阅读全文
摘要:
这是我见过的最神的乱搞!开坑.AC POJ 2420 1 #include 2 #include 3 #include 4 5 #include 6 #include 7 #include 8 #include 9 10 #include 11 #inclu... 阅读全文
摘要:
真的还有好多东西要学啊......定理: 选取树 $T$ 的任意一个点 $i$ ,则与 $i$ 距离最远的节点 $r$ 必定是树中一条直径的端点.定理: 经过树上一点i的最长路径的长度,一定等于: 情况1. $i$ 所引领的子树中,最大深度与次大深度之和. 情况2. $i$ 所引领的子树中的... 阅读全文
摘要:
$$ A(\vec{j})+B(\vec{j})F(\vec{i})=G(\vec{i}) $$$A$ 和 $B$ 是关于 $\vec{j}$ 的函数.注意,如果确定了 $\vec{j}$ ,那么 $G(\vec{i})$ 便是一条在平面 $(F(\vec{i}),G(\vec{i}))$ 上的直线... 阅读全文
摘要:
欧几里得算法与扩展欧几里得算法gcd. 用于求最大公约数.int gcd(int a,int b){ return !a ? b : gcd(b%a,a); }扩欧. 用于求方程 $ax+by=gcd(a,b)$ 的解$(x,y)$ .struct value{ int x,y; value(int... 阅读全文
摘要:
后缀自动机参考 http://blog.sina.com.cn/s/blog_70811e1a01014dkz.htmlhttp://blog.csdn.net/cyendra/article/details/37993603?utm_source=tuicool"一个构造好的 SAM 实际上包含了... 阅读全文
摘要:
AC自动机存储一个字符串的集合,把他叫做T.用i(s)表示字符串s的代表节点. 用s(i)表示节点i的代表字符串.构建需要的时间是 $O(nc)$ 的,n为字符个数,c为字符集的大小.AC自动机的性质.1.从根到一个节点的路径是T中某些字串的前缀. (trie 基本性质)2.从一个节点到叶节点的路径... 阅读全文
摘要:
为什么我感觉随便写一个一维生命游戏规则就可以做出一个看起来很随机实际上也蛮随机的随机数生成器....这是代码: 1 #include 2 #include 3 #include 4 5 #include 6 #include 7 #include 8 #include 9 10 ... 阅读全文