文章分类 -  acm博弈

CodeForces 69D Dot :两个人轮流移动棋子,移动方法有n种,谁先移动到距离原点>d则输,问谁赢 :博弈+记忆化
摘要:其实本题还有一个可以沿y=x对称的操作,但仔细思考会发现其并不影响对于一个点,比如A当前先走,只要找到一个他可以跳的地方且B从这儿必跪的A就必胜=否则A跪所以可以用记忆化dfs来写,复杂度大概200*200*20 1 #include 2 #include 3 #include 4 using na... 阅读全文

posted @ 2015-03-27 00:16 xiao_xin 阅读(252) 评论(0) 推荐(0)

CodeForces 257B Playing Cubes :两人轮流向已有序列后面放红蓝木块,一人想使相邻颜色相同多一人想不想同颜色多,最后得分? :博弈+思维
摘要:对比代码量,好大的思维量==其实对于第二个拿相同的木块分的人,他当前放与上一个木块相同最优对于第一个想拿不同木块分的人,他放与上一块木块不同颜色最优第一个人放多的颜色木块更优=至于为什么?>>当前对自己有利就放,否则到后面就无利了 2 #include 3 #include 4 using name... 阅读全文

posted @ 2015-03-26 16:03 xiao_xin 阅读(552) 评论(0) 推荐(0)

CodeForces 197A Plate Game :轮流在矩形中放圆,先放不下者输 :博弈+思维
摘要:如果一个放不下第二个人赢,否则第一个人放在中间,由于对称性,第二个人必败=1 #include2 #include3 int main()4 {5 int n,m,r;6 scanf("%d%d%d",&n,&m,&r);7 if (n>=r*2&&m>=r*2) printf("Fir... 阅读全文

posted @ 2015-03-25 21:49 xiao_xin 阅读(314) 评论(0) 推荐(0)

hdu1849 1850 1851 nim博弈
摘要:1 #include 2 int main() 3 { 4 int n,k,a,i; 5 while (~scanf("%d",&n)&&n!=0) 6 { 7 k=0; 8 for (i=1;i 2 int main() 3 { 4 ... 阅读全文

posted @ 2014-07-16 16:32 xiao_xin 阅读(94) 评论(0) 推荐(0)

hdu1527 威佐夫博弈
摘要:1 #include 2 #include 3 int main() 4 { 5 int t,n,m,x; 6 while (~scanf("%d%d",&n,&m)) 7 { 8 if (n>m) {t=m; m=n; n=t; } 9 t... 阅读全文

posted @ 2014-07-16 16:30 xiao_xin 阅读(116) 评论(0) 推荐(0)

导航