博弈类DP题,设状态f[i][j][a][b]表示第一堆里的范围在i j,第二堆的范围在a b,Alice可以得到的最大值 则有: dp[i][j][a][b] = max { dp[ i + 1 ] [ j ] [ a ] [ b ] dp[ i ] [ i 1 ] [ a ] [ b ] dp[ ...
分类:
其他好文 时间:
2019-08-18 15:43:19
阅读次数:
95
题目链接:点击进入
上次做了一个类似的,不过是每次只能取一个的.这次规定可以一次取多个了.定义状态dp[i][j]表示面对区间(i,j)时可以得到的最大分数,然后dp[i][j]=max(sum[i+k][j]-dp[i+k][j]+sum[i][i-k+1],sum[i][j-k]-dp[i][j-k]+sum[j-k+1][j]).综合一下就是dp[i][j]=sum[i][j]-min(dp...
分类:
其他好文 时间:
2015-06-10 22:44:28
阅读次数:
129