procedure2012
It's not worth it to know you're not worth it!
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 20 下一页
摘要: [关键字]:2-sat[题目大意]:http://poj.org/problem?id=3648//=====================================================================================================[分析]:http://blog.csdn.net/l04205613/article/details/6673512这个博客对于2-sat的题目总结的不错。[代码]:View Code #include<iostream>#include<cstring>#include 阅读全文
posted @ 2012-02-04 16:46 procedure2012 阅读(205) 评论(0) 推荐(0)
摘要: [关键字]:2-sat[题目大意]:有n场婚礼,牧师可以在每场婚礼开始后的di分钟主持,也可以在结束前的di分钟主持,问是否有一种方案可以让牧师主持所有婚礼。//=====================================================================================================[分析]:2-sat求解方案的问题。把每场婚礼看成一组点(A,A'),然后对所有有矛盾的点处理:A->B'(A与B有矛盾)、A->B(A与B’有矛盾)……,然后利用2-sat求解,具体方法可见《由对称性解2- 阅读全文
posted @ 2012-02-04 16:28 procedure2012 阅读(441) 评论(0) 推荐(0)
摘要: 一、图论(1)、网络流SAP#include<iostream>#define INF 100000using namespace std;struct node{ int y,d; node *next,*op;};static int n,m,tot=0,ans=0,s,t,sum=0;static node *link[1000],e[9000];static int h[1000],num[1000];void add(int x,int y,int d){ tot++; e[tot].y=y; e[tot].d=d; e[tot... 阅读全文
posted @ 2012-02-02 12:19 procedure2012 阅读(258) 评论(0) 推荐(0)
摘要: [关键字]:平衡树[题目大意]:http://www.zybbs.org/JudgeOnline/problem.php?id=1208//=====================================================================================================[分析]:其实人买狗和狗挑人是一样的,只是狗多时就是维护一个以狗为节点的treap,然后根据人的需求去查找;人多时treap存储的节点变为人再进行操作。[代码]:treap版 1 #include<iostream> 2 #include< 阅读全文
posted @ 2012-01-29 23:08 procedure2012 阅读(266) 评论(0) 推荐(0)
摘要: [关键字]:LCA[题目大意]:求出两点间的最近公共祖先。//=====================================================================================================[分析]:利用并查集在每次对子树进行遍历时进行合并,因为对以x为根的子树的遍历时只有当x的所有子树都遍历过后才会把它合并到他父亲的集合里,所以当需要查找的两个节点q1、q2中q1已被遍历且q2正是当前遍历的节点时说明此时只有距他们最近的祖先是在集合里的(可能为q1或q2),所以只要找到已被遍历的q1所在集合的祖先就是这两的节点的LCA 阅读全文
posted @ 2012-01-29 22:03 procedure2012 阅读(807) 评论(0) 推荐(0)
摘要: [关键字]:字符串[题目大意]:求出所给出的每个单词在整个字母方阵中出现的坐标和方向。//=====================================================================================================[分析]:先按每个要求的单词建立字典树,然后枚举每种方向的起点,保证对每个方向的搜索都能够覆盖全图,进行多模式匹配。[代码]:View Code 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 # 阅读全文
posted @ 2012-01-29 21:51 procedure2012 阅读(214) 评论(0) 推荐(0)
摘要: [关键字]:字符串[题目大意]:求给出的单词在文章中出现了几次。//=====================================================================================================[分析]:裸的AC自动机模板。首先以所给出的所有字母构建trie树,对文章进行多模式匹配。[代码]:View Code 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 #include<algorithm> 阅读全文
posted @ 2012-01-29 21:46 procedure2012 阅读(1485) 评论(0) 推荐(0)
摘要: [关键字]:最优比率生成树[题目大意]:对于一个图有n个点,m条边,每条边有一个ci,bi。求其生成树使得∑ci /∑bi最小(或最大)。为方便讨论这里统一记录求min (∑ci /∑bi )//=====================================================================================================[分析]:黑书上有详细证明,有些数学符号用电脑打也不太好打,实在懒得写了,这个博客上解答的很详细http://hi.baidu.com/zzningxp/blog/item/b2d1b4ec1f8bbc 阅读全文
posted @ 2012-01-21 17:02 procedure2012 阅读(220) 评论(0) 推荐(0)
摘要: [关键字]:网络流 最小费用最大流[题目大意]:给定一张有向图,每条边都有一个容量C和一个扩容费用W。这里扩容费用是指将容量扩大1所需的费用。求: 1、 在不扩容的情况下,1到N的最大流; 2、 将1到N的最大流增加K所需的最小扩容费用。//=====================================================================================================[分析]:第一问很好求,第二问也很好求……第二问,要在原有边的基础上加一条容量为∞费用为W的边,再加入一个超级汇点和原汇点连一条容量原最大流加K费用为0的边 阅读全文
posted @ 2012-01-21 16:38 procedure2012 阅读(298) 评论(0) 推荐(0)
摘要: [关键字]:网络流[题目大意]:每个植物都有一个分数(可正可负)和一个攻击位置集合(可为空集)。僵尸对植物发动进攻,只能从右向左进攻且不能走入被植物攻击到的位置,每消灭一个植物就可获得它的分数,求出最大得分(可为0,不发动进攻)。//===================================================================================================[分析]:就是一个最大权闭合子图的模型。首先由源点向所有正权点连一条容量为其权值的边,有所有负权点向汇连一条容量为-(权值)的边,然后由被保护点向保护点连一条∞的边。这 阅读全文
posted @ 2012-01-21 16:29 procedure2012 阅读(1300) 评论(0) 推荐(0)
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 20 下一页