procedure2012
It's not worth it to know you're not worth it!
01 2012 档案
[HNOI 宠物收养所]
摘要:[关键字]:平衡树[题目大意]:http://www.zybbs.org/JudgeOnline/problem.php?id=1208//=====================================================================================================[分析]:其实人买狗和狗挑人是一样的,只是狗多时就是维护一个以狗为节点的treap,然后根据人的需求去查找;人多时treap存储的节点变为人再进行操作。[代码]:treap版 1 #include<iostream> 2 #include< 阅读全文
posted @ 2012-01-29 23:08 procedure2012 阅读(263) 评论(0) 推荐(0)
[POJ1330 Nearest Common Ancestors]
摘要:[关键字]:LCA[题目大意]:求出两点间的最近公共祖先。//=====================================================================================================[分析]:利用并查集在每次对子树进行遍历时进行合并,因为对以x为根的子树的遍历时只有当x的所有子树都遍历过后才会把它合并到他父亲的集合里,所以当需要查找的两个节点q1、q2中q1已被遍历且q2正是当前遍历的节点时说明此时只有距他们最近的祖先是在集合里的(可能为q1或q2),所以只要找到已被遍历的q1所在集合的祖先就是这两的节点的LCA 阅读全文
posted @ 2012-01-29 22:03 procedure2012 阅读(803) 评论(0) 推荐(0)
[POJ1204 Word Puzzles]
摘要:[关键字]:字符串[题目大意]:求出所给出的每个单词在整个字母方阵中出现的坐标和方向。//=====================================================================================================[分析]:先按每个要求的单词建立字典树,然后枚举每种方向的起点,保证对每个方向的搜索都能够覆盖全图,进行多模式匹配。[代码]:View Code 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 # 阅读全文
posted @ 2012-01-29 21:51 procedure2012 阅读(211) 评论(0) 推荐(0)
[HDU2222 ]
摘要:[关键字]:字符串[题目大意]:求给出的单词在文章中出现了几次。//=====================================================================================================[分析]:裸的AC自动机模板。首先以所给出的所有字母构建trie树,对文章进行多模式匹配。[代码]:View Code 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 #include<algorithm> 阅读全文
posted @ 2012-01-29 21:46 procedure2012 阅读(1479) 评论(0) 推荐(0)
[POJ2728 Desert King]
摘要:[关键字]:最优比率生成树[题目大意]:对于一个图有n个点,m条边,每条边有一个ci,bi。求其生成树使得∑ci /∑bi最小(或最大)。为方便讨论这里统一记录求min (∑ci /∑bi )//=====================================================================================================[分析]:黑书上有详细证明,有些数学符号用电脑打也不太好打,实在懒得写了,这个博客上解答的很详细http://hi.baidu.com/zzningxp/blog/item/b2d1b4ec1f8bbc 阅读全文
posted @ 2012-01-21 17:02 procedure2012 阅读(217) 评论(0) 推荐(0)
[ZJOI2010network 网络扩容]
摘要:[关键字]:网络流 最小费用最大流[题目大意]:给定一张有向图,每条边都有一个容量C和一个扩容费用W。这里扩容费用是指将容量扩大1所需的费用。求: 1、 在不扩容的情况下,1到N的最大流; 2、 将1到N的最大流增加K所需的最小扩容费用。//=====================================================================================================[分析]:第一问很好求,第二问也很好求……第二问,要在原有边的基础上加一条容量为∞费用为W的边,再加入一个超级汇点和原汇点连一条容量原最大流加K费用为0的边 阅读全文
posted @ 2012-01-21 16:38 procedure2012 阅读(294) 评论(0) 推荐(0)
[NOI2009 植物大战僵尸]
摘要:[关键字]:网络流[题目大意]:每个植物都有一个分数(可正可负)和一个攻击位置集合(可为空集)。僵尸对植物发动进攻,只能从右向左进攻且不能走入被植物攻击到的位置,每消灭一个植物就可获得它的分数,求出最大得分(可为0,不发动进攻)。//===================================================================================================[分析]:就是一个最大权闭合子图的模型。首先由源点向所有正权点连一条容量为其权值的边,有所有负权点向汇连一条容量为-(权值)的边,然后由被保护点向保护点连一条∞的边。这 阅读全文
posted @ 2012-01-21 16:29 procedure2012 阅读(1298) 评论(0) 推荐(0)
[POJ1149 Pigs]
摘要:[大意]:有m个猪圈每个中有一定数目的猪但无容量上限,n个顾客么个顾客需要一定数目的猪。每个顾客可以打开特定的猪圈从中取猪,此时这几个猪圈里的猪可以互相流动。问最多可以卖出多少头猪。[关键字]:网络流//=====================================================================================================[分析]:最原始的想法,可以把每个猪圈看成一个点每个顾客看成一个点,然后猪圈的初始数目就是超级源到猪圈点的边容量,每个顾客需要的猪的数量就是顾客点到超级汇的边的容量,一旦猪圈和顾客有联系就把这个 阅读全文
posted @ 2012-01-05 23:41 procedure2012 阅读(348) 评论(0) 推荐(0)