经典算法模板&&有趣的代码&&定理(详细)
QiufengWang424
这个作者很懒,什么都没留下…
展开
-
DP专题->01背包
首先01背包题目的雏形是有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。从这个题目中可以看出,01背包的特点就是:每种物品仅有一件,可以选择放或不放。其状态转移方程是:f[i][v]=max{f[i-1][v],f[i-1][v-c[i]]+w[i]}对于这方方程其实并不难理解,方程之中,现原创 2016-08-19 14:44:20 · 694 阅读 · 0 评论 -
tarjan求强连通分量专题
定义: 对于有向图上的2个点a,b,若存在一条从a到b的路径,也存在一条从b到a的路径,那么称a,b是强连通的。 对于有向图上的一个子图,若子图内任意点对(a,b)都满足强连通,则称该子图为强连通子图。 非强连通图有向图的极大强连通子图,称为强连通分量。 单独的点也可以是强连通分量 学习博客:https://www.byvoid.com/zhs/blog/scc-tarjan下面给几个例题原创 2017-05-02 22:19:52 · 776 阅读 · 0 评论 -
树链剖分专题
入门的话,这篇还是写的不错的: http://blog.sina.com.cn/s/blog_6974c8b20100zc61.html一个入门小专题:https://vjudge.net/contest/158100#overview1.SPOJ QTREE 树链剖分+线段树 题意:给两个操作,一个是把第i条边权值修改成ti,另一个是查询a到b之间最大的边权值基于边权,修改单条边权,查询路径原创 2017-04-23 21:39:56 · 336 阅读 · 0 评论 -
线段树全新版 【最近更新 9月8日】
修改自:http://www.notonlysuccess.com/在代码前先介绍一些我的线段树风格: maxn是题目给的最大区间,而节点数要开4倍,确切的来说节点数要开大于maxn的最小2x的两倍lson和rson分辨表示结点的左儿子和右儿子,由于每次传参数的时候都固定是这几个变量,所以可以用预定于比较方便的表示以前的写法是另外开两个个数组记录每个结点原创 2016-08-12 00:20:26 · 1206 阅读 · 1 评论 -
最大团问题
百度上的定义: http://baike.baidu.com/item/%E6%9C%80%E5%A4%A7%E5%9B%A2%E9%97%AE%E9%A2%98简单的讲最大团就是最大完全子图一般做法就是dfs+剪枝 可参考这篇博客: http://www.cnblogs.com/zhj5chengfeng/p/3224092.html下面介绍几个例题: 1、第一道裸题:ZOJ 1492 M原创 2017-04-03 17:39:04 · 873 阅读 · 0 评论 -
ACM/IOI 历年国家集训队论文集和论文算法分类整理
按照时间排序:国家集训队1999论文集陈宏:《数据结构的选择与算法效率——从IOI98试题PICTURE谈起》来煜坤:《把握本质,灵活运用——动态规划的深入探讨》齐鑫:《搜索方法中的剪枝优化》邵铮:《数学模型的建立、比较和应用》石润婷:《隐蔽化、多维化、开放化——论当今信息学竞赛中数学建模的灵活性》杨帆:《准确性、全面性、美观性——测试数据设计中的三要素转载 2016-10-15 16:10:10 · 2504 阅读 · 1 评论 -
【POJ 1006】【CRT(中国剩余定理)模板题】Biorhythms
传送门:HDU1006描述:BiorhythmsTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 130935 Accepted: 41750DescriptionSome people believe that there are th原创 2016-10-11 22:07:31 · 1075 阅读 · 0 评论 -
【POJ2891】【一般模线性方程 模板题】Strange Way to Express Integers
传送门:POJ 2891题意:给的模数不满足互质,求同余方程组的解思路:同样是求这个东西。。X mod m1=r1X mod m2=r2.........X mod mn=rn首先,我们看两个式子的情况X mod m1=r1……………………………………………………………(1)X mod m2=r2……………………………………………………………原创 2016-10-11 23:18:32 · 463 阅读 · 0 评论 -
【POJ 3321】【dfs序(讲解)+(树状数组或者线段树)】Apple Tree【给你一颗树,最初每个节点上都有一个苹果,有两种操作单点修改和查询子树的苹果个数】
传送门:POJ 3321描述:Apple TreeTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 27128 Accepted: 8048DescriptionThere is an apple tree outside of kaka原创 2016-10-15 23:18:17 · 1127 阅读 · 0 评论 -
【FZU2020】【Lucas模板题】【求组合数取模】
传送门:Problem 2020 组合描述: Problem 2020 组合Accept: 969 Submit: 2348Time Limit: 1000 mSec Memory Limit : 32768 KB Problem Description给出组合数C(n,m), 表示从n个元素中选出m个元素的方案数。例如C(5,2) =原创 2016-10-10 22:41:34 · 386 阅读 · 0 评论 -
HDU 1054 Strategic Game(二分图最小点覆盖 或者 树形DP)
描述:Strategic GameTime Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1760 Accepted Submission(s): 742Problem DescriptionBob enj原创 2016-09-05 23:11:11 · 398 阅读 · 0 评论 -
二分图最大匹配(模板+题目)
定义和定理:最大匹配数:最大匹配的匹配边的数目最小点覆盖数:选取最少的点,使任意一条边至少有一个端点被选择最大独立数:选取最多的点,使任意所选两点均不相连最小路径覆盖数:对于一个 DAG(有向无环图),选取最少条路径,使得每个顶点属于且仅属于一条路径。路径长可以为 0(即单个点)。定理1:最大匹配数 = 最小点覆盖数(这是 Konig 定理)定理2:最大匹配数 =原创 2016-09-05 20:48:41 · 3433 阅读 · 0 评论 -
网络最大流-ISAP算法详解与模板
ISAP算法 ISAP(Improved Shortest Augumenting Path)算法是改进版的SAP算法,如果对效率要求很高的时候,可以用该算法。 (1)概述:算法基于这样的一个事实:每次增广之后,任意结点到汇点(在残余网络中)的最短距离都不会减小。这样,我们可以利用d[i[表示结点i到汇点的距离的下界。然后再增广过程当中不断地修改这个下界。增广的时候和Dinic算法类似,只原创 2016-09-04 16:51:54 · 5690 阅读 · 1 评论 -
01字典树专题 (解决异或最大值问题)不断更新ing~
以前一直以为字典树没有多少用,但是最近一直碰到(难道是以前刷题太少的原因么),其中有一类问题叫做01字典树问题,它是用来解决xor的有力武器,通常是给你一个数组,问你一段连续的异或和最大是多少,正常思路贪心dp啥的都会一头雾水,但是用01字典树就能很快的解决,实现起来也十分方便。贴一个01字典树的普遍模版#define Memset(x, a) memset(x, a, sizeof(原创 2016-08-12 15:12:57 · 4040 阅读 · 1 评论 -
【hdu 3342】【拓扑排序(DAG) BFS】Legal or Not
传送门:HDU 3342描述:Legal or NotTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 7288 Accepted Submission(s): 3482Problem Descr原创 2016-10-21 20:00:06 · 310 阅读 · 0 评论