各种算法
文章平均质量分 73
priority_ez
这个作者很懒,什么都没留下…
展开
-
dd大牛的背包九讲
每个人一开始学背包都是有点迷惑的(起码我就是),当我看了dd大牛的背包九讲后便阔然开朗了,相信它对你也很有作用。P01: 01背包问题 题目 有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 基本思路 这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。原创 2015-07-17 15:08:10 · 801 阅读 · 7 评论 -
树分治
bzoj原创 2017-03-28 08:35:11 · 357 阅读 · 0 评论 -
数论杂题
orz链接杂题:1.hdu1717题意:将小数化为分数(小数可为循环小数和不循环的普通小数) [题解]2.hdu1452题意:输入x,求2004^x的所有因子的和,结果对29取余。题解: 2004=22∗3∗1672004=2^2*3*167 2004x=22x∗3x∗167x2004^x=2^{2x}*3^x*167^x ∴2004x2004原创 2017-04-18 11:06:18 · 795 阅读 · 0 评论 -
数论
重要知识点1.最大公约数ll gcd(ll x,ll y){ if (!x || !y) return x+y; if (x%y==0) return y; return gcd(y,x%y);}2.扩展欧几里得int exgcd(int a,int b,int &x,int &y){ if (b==0) { x=1,y=0;原创 2016-11-02 16:48:39 · 785 阅读 · 0 评论 -
2-SAT
一坨题bzoj1997 bzoj2199 bzoj1823 bzoj4078poj2723 题意: 有2*n把钥匙分成n组,每组两个钥匙如果选择了一把另一把就会消失。有m个门,每个门上有两把锁,只要打开一把锁就能打开门,要打开第i+1个门必须先打开第i个门。 求最多能打开多少门。poj2749 题意: 好像是平面上有两个点s1s_1和s2s_2,这两个点是连在一起的,然后给了n个点,原创 2017-04-18 17:22:47 · 933 阅读 · 0 评论 -
高斯消元
题: bzoj4184 bzoj3168 bzoj4031 bzoj3270 bzoj3601 bzoj3143bzoj4184题意:给出一堆数的插入和删除顺序,询问每一次操作后,选出某些数异或起来的最大值a1a_1^a2a_2^a3a_3^…^ana_n (数的个数≤500000\le 500000)分析:有插入和删除操作不好处理,于是我们尝试经过一波预处理将其转化为只有插入~ 显原创 2017-02-20 21:06:32 · 507 阅读 · 0 评论 -
分块
题cf375D—莫队裸题 bzoj3509 bzoj2821 bzoj3289 bzoj3757 bzoj3781 bzoj2002 bzoj2141 bzoj2821 bzoj2724 bzoj2388 bzoj2120 bzoj2453 bzoj3343 bzoj2038 bzoj1101 bzoj4216 bzoj1086 bzoj3236 bzoj380原创 2017-02-23 14:28:36 · 648 阅读 · 0 评论 -
link-cut-tree
注意: ①左父亲右儿子!!每棵splay中的点左子树的深度都比当前点小,右节点的深度都比当前节点的深度大。 题: xsy1173(YES) 一个朴素的想法就是暴力加入区间中的每一条边。 对于加入的一条边,它可能将两个联通块连起来,也可能没有任何贡献。 定义一个c[],c[x]=1就是有贡献,c[x]=0为没有贡献。 对于没有贡献的情况我们将链中编号最小的边删去,将其在c[]中变为0,强原创 2016-12-18 21:19:42 · 754 阅读 · 0 评论 -
数位dp
bzoj1833 bzoj3780 bzoj3652 bzoj3598 bzoj1026 bzoj2757 bzoj3131 bzoj1902 bzoj3209 bzoj4513 bzoj3679 bzoj4521 bzoj3329 bzoj3530 bzoj1183原创 2017-07-06 16:09:52 · 518 阅读 · 0 评论 -
KD-tree
bzoj4520 bzoj2850√Ax+By<CAx+By<C bzoj4605 bzoj2648 bzoj2716插入点时要每插入n√\sqrt n个点重构一次 //查询一个点到另一个点的最短曼哈顿距离 int gdis(node a,node now){ //询问的当前点到搞到的kd-tree的矩形的距离 int res=0;原创 2017-03-24 12:58:34 · 549 阅读 · 0 评论 -
矩阵乘法
xsy2041 bzoj4002 题意: ⌊(b+d√2)n⌋ mod 7528443412579576937\lfloor(\frac{b+\sqrt{d}}{2})^n\rfloor~~mod~~7528443412579576937分析: 构造数列an=(b+d√2)n+(b−d√2)na_n=(\frac{b+\sqrt{d}}{2})^n+(\frac{b-\sqrt{d}}{原创 2017-03-17 16:33:19 · 1711 阅读 · 0 评论 -
期望DP
bzoj3036 bzoj3450 bzoj4318原创 2017-01-09 17:55:08 · 442 阅读 · 0 评论 -
CDQ分治&&整体二分
CDQ分治bzoj2244bzoj2683bzoj1176bzoj1492bzoj3262bzoj3295bzoj2716hdu5618整体二分xsy1270(bzoj4009)√bzoj2738√bzoj2527√bzoj3110√(注意开long long)poj2104√原创 2017-01-09 20:24:27 · 1154 阅读 · 0 评论 -
OI知识点总结
Part0编程基础1. C++或pascal—结构化编程—面向对象的内容(STL)2. 怎样解题?3. 怎样调试? Part1求解策略1. 动态规划(DP)—维护类型=布尔型=数值型—题型=按位DP=区间DP(环形DP)=状压DP(连通性DP)=树形DP(记忆化搜索)—优化=空间 滚动数组=时间+降维+优化转移原创 2015-07-14 12:08:16 · 2122 阅读 · 0 评论 -
并查集详解
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点转载 2016-02-11 11:21:40 · 468 阅读 · 0 评论 -
trie树
题目 bzoj4260√ bzoj3439√ bzoj3166√ bzoj3261√原创 2017-01-08 11:25:48 · 317 阅读 · 0 评论 -
替罪羊树
bzoj3224 bzoj3600 bzoj3065原创 2017-01-17 15:54:58 · 590 阅读 · 0 评论 -
无向图的连通性分析
对于连通图G,若去掉某节点后图不连通,则该节点称作割点。若去掉某条边后图不连通,则该边称作桥。要使图G不连通,至少需要删除多少个节点或至少需要删除多少条边,需删除的最少节点数或边数称为连通图的顶连通度和边连通度,连通图的顶连通度和边连通度问题反映了连通图的连通程度。1.计算连通图的割点推论1:若u不是根,则u称为割点当且仅当存在u的某一个儿子节点s,从s或s的后代点到u原创 2015-07-15 14:52:25 · 3917 阅读 · 0 评论 -
三分
题:bzoj3330 bzoj3203 bzoj4014 bzoj3874 bzoj1857 bzoj4071 bzoj1229原创 2017-02-27 12:16:27 · 720 阅读 · 0 评论 -
虚树
bzoj 2286 3572 3879 3991 3611原创 2017-01-15 23:19:57 · 512 阅读 · 0 评论 -
fft/ntt
题bzoj3160 题意:在一个仅仅含有a,b的字符串里选取一个子序列,使得: 1.位置和字符都关于某条对称轴对称; 2.不能是连续的一段。 分析: 对于每一条对称轴只要求在对称轴两边的对应位置上有相同字符的位置有多少个。 答案就是2len−1−len2^{len}-1-len(减去空串和连续的串) 但这东东它可以是不连续的….. 我们可以将 a b a a b a 1 0原创 2017-03-18 15:34:12 · 769 阅读 · 0 评论