2011年2月18日

杭电700题,纪念下

摘要: 再接再厉! ^_^ 阅读全文
posted @ 2011-02-18 19:06 CrazyAC 阅读(563) 评论(0) 推荐(0)

字符串入门

摘要: KMP算法算法 2009-11-14 20:54:51 阅读205 评论0 字号:大中小订阅ACM 字符串KMP算法模板与用途2009年09月23日 星期三 16:08直接用KMP算法真的去匹配两个字符串其实很少见,除非字符串里的字符集范围很小,或字符重复数量过多,用KMP可大减少时间,否则一般都是... 阅读全文
posted @ 2011-02-18 17:27 CrazyAC 阅读(202) 评论(0) 推荐(0)
2011年2月17日

判断无向图是否连通,求图的直径

摘要: hdoj 1869 六度分离 阅读全文
posted @ 2011-02-17 19:49 CrazyAC 阅读(4006) 评论(0) 推荐(0)

拓扑排序判断环

摘要: hdoj 1811 Rank of Tetris由于有等号的情况,所以要运用并查集,具有相等的点都有公共的父节点,从而相等的化作一个点。然后拓扑排序判断有没有环。 阅读全文
posted @ 2011-02-17 13:25 CrazyAC 阅读(1473) 评论(0) 推荐(0)
2011年2月14日

[转]Game theory初步

摘要: 转载地址:http://www.cnblogs.com/Knuth/archive/2009/09/05/1561002.html游戏1l 有两个游戏者:A和B。l 有21颗石子。l 两人轮流取走石子,每次可取1、2或3颗。l A先取。l 取走最后一颗石子的人获胜,即没有石子可取的人算输。如果剩下1、2或3颗石子,那么接下来取的人就能获胜;如果剩下4颗,那么无论接下来的人怎么取,都会出现前面这种情况,所以接下来取的人一定会输;如果剩下5、6或7颗石子,那么接下来取的人只要使得剩下4颗石子,他就能获胜。0,4,8,12,……都是下一个取石子者的必败状态。现在有21颗石 阅读全文
posted @ 2011-02-14 21:39 CrazyAC 阅读(172) 评论(0) 推荐(0)

[转]博弈论(二):Sprague-Grundy函数

摘要: 转载地址:http://acm.hdu.edu.cn/showproblem.php?pid=3094上一期的文章里我们仔细研究了Nim游戏,并且了解了找出必胜策略的方法。但如果把Nim的规则略加改变,你还能很快找出必胜策略吗?比如说:有n堆石子,每次可以从第1堆石子里取1颗、2颗或3颗,可以从第2堆石子里取奇数颗,可以从第3堆及以后石子里取任意颗……这时看上去问题复杂了很多,但相信你如果掌握了本节的内容,类似的千变万化的问题都是不成问题的。 现在我们来研究一个看上去似乎更为一般的游戏:给定一个有向无环图和一个起始顶点上的一枚棋子,两名选手交替的将这枚棋子沿有向边进 阅读全文
posted @ 2011-02-14 21:38 CrazyAC 阅读(254) 评论(0) 推荐(0)

[转]寻找必败态——一类博弈问题的快速解法

摘要: 转载地址:http://www.cnblogs.com/Knuth/archive/2009/09/05/1561005.html博弈是信息学和数学试题中常会出现的一种类型,算法灵活多变是其最大特点,而其中有一类试题更是完全无法用常见的博弈树来进行解答。 寻找必败态即为针对此类试题给出一种解题思路。 此类问题一般有如下特点: 1、博弈模型为两人轮流决策的非合作博弈。即两人轮流进行决策,并且两人都使用最优策略来获取胜利。 2、博弈是有限的。即无论两人怎样决策,都会在有限步后决出胜负。 3、公平博弈。即两人进行决策所遵循的规则相同。 以下题目都属于这一类: POJ1740 A New Stone 阅读全文
posted @ 2011-02-14 21:37 CrazyAC 阅读(184) 评论(0) 推荐(0)

【转】博弈知识汇总

摘要: 博弈知识汇总By Tanky Woo – 2010年08月19日Posted in: ACM/ICPC, 算法|Algorithms以下是我从网上收集的关于组合博弈的资料汇总:有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个人轮流从堆中取物体若干,规定最后取光物体者取胜。这是我国民间很古老的一个游戏,别看这游戏极其简单,却蕴含着深刻的数学原理。下面我们来分析一下要如何才能够取胜。(一)巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。最后取光者得胜。 显然,如果n=m+1,那么由于一次最多只能取 阅读全文
posted @ 2011-02-14 19:11 CrazyAC 阅读(300) 评论(2) 推荐(1)
2011年2月13日

博弈专辑

摘要: 博弈知识汇总:http://www.cnblogs.com/crazyac/articles/1954607.html1.hdoj 1907 JohnNim博弈Nim博弈,如果出现不是1的情况,则所有情况做异或操作。如果所有的数量都是1则看n的奇偶性。#include <iostream>#include <cstdio>using namespace std;int main() {// freopen("c:/aaa.txt", "r", stdin); int T, a, res, n, i; bool flag; scan 阅读全文
posted @ 2011-02-13 16:04 CrazyAC 阅读(286) 评论(0) 推荐(0)
2011年1月11日

KM算法

摘要: hdoj 2813 One fihgt one最大带权匹配引用1:KM算法是通过给每个顶点一个标号(叫做顶标)来把求最大权匹配的问题转化为求完备匹配的问题的。设顶点Xi的顶标为A[i],顶点Yi的顶标为B [i],顶点Xi与Yj之间的边权为w[i,j]。在算法执行过程中的任一时刻,对于任一条边(i,j),A[i]+B[j]=w[i,j]始终 成立。KM算法的正确性基于以下定理:   若由二分图中所有满足A[i]+B[j]=w[i,j]的边(i,j)构成的子图(称做相等子图)有完备匹配,那么这个完备匹配就是二分图的最大权匹配。   这个定理是显然的。因为对于二分图的任意一个匹配,如果它包含于相 阅读全文
posted @ 2011-01-11 13:35 CrazyAC 阅读(8015) 评论(3) 推荐(0)