由于我比较懒,就把题目截屏下来了
题目如下:
1.题目分析
由于题目告诉我们卡片是有限的,并且保证达到终点时卡片刚好用完,那么我们可以设一个dp状态:dp[a][b][c][d]表示四种卡片分别用了a,b,c,d次所获得的最高得分(虽然用的次数是固定的,但得分可不固定,这里是最高得分)。
注:此时的位置在a+2b+3c+4d的位置
那么怎样进行状态转移呢?假设当前卡片已经分别使用了abcd张,且已经知道了使用卡片数比abcd小的所有最优解,根据容斥原理,走到abcd的位置有四种情况,分别是最后一张用1,2,3和4四种情况,我们只需要在四种情况里找出最大的即可。
2.AC代码