
博弈
flowser
you are what you want to be
展开
-
uva10404L - Bachet's Game(博弈)
题意: 两个人A.B,给你n个石子,m种取石子方式,每次可选其中一种方式(即取a[i]个石子,1《i《m),然后A先取,谁先取完谁先赢。问谁先赢 思路: 博弈题,T_T不会写,参考了大神做法。博弈的话一方要是赢了,另一方就输。那从A的角度,dp[i]表示,剩下i,A去取的话能赢吗,只要dp[i-a[j]]==0,则dp[1]=1,表示A能赢,如果m种方式尝试后他仍为0,则输,这样0101交替,原创 2016-03-18 23:59:17 · 370 阅读 · 0 评论 -
uva10891 - Game of Sum
题意: 给一个序列,AB两人比赛,每人每次只能从左或从右取任意连续数,都足够聪明,极力想让自己赢,A先开始取,让你求A和B都取最优策略时,A-B的得分结果。 思路: 初写dp没多久,式子怎么也推不出来,看了题解,原来是这样的: 让sum[i]表示前i个数总和,要求A-B即求 A - (sum[n]- A),即求2*A-sum[n]。 求A的话,让dp[i][j]表示A在第i~j个数中取到的值,则dp[1][原创 2016-02-13 11:39:21 · 302 阅读 · 0 评论