摘要: 二维费用背包。 状态表示: \(f(i,j,k)\):从前$i$首歌曲中选,当前已使用的唱片数为$j$,且当前唱片的总时长不超过$k$的情况下,能够选出的歌曲数的最大值。 状态转移: \[ f(i,j,k)=\begin{cases} f(i-1,j,k) & 不选第i首歌曲 \\ f(i-1,j. 阅读全文
posted @ 2021-06-26 17:48 Dazzling! 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 状态表示: \(f[i][j]\) 表示在区间 \([i,j]\) 时,先手和后手的最大差值得分。 状态转移: 当取 \(w[i]\) 时,\(f[i][j]=w[i]−f[i+1][j]\)。 当取 \(w[j]\) 时,\(f[i][j]=w[j]−f[i][j−1]\)。 \(f[i][j]\ 阅读全文
posted @ 2021-06-26 11:10 Dazzling! 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 定义二维数组 \(\textit{dp}\),其行数和列数都等于数组的长度,$\textit[i][j] $表示当数组剩下的部分为下标 \(i\) 到下标 \(j\) 时,即在下标范围 \([i, j]\) 中,当前玩家与另一个玩家的分数之差的最大值,注意当前玩家不一定是先手。 只有当 \(i \l 阅读全文
posted @ 2021-06-26 10:46 Dazzling! 阅读(25) 评论(0) 推荐(0) 编辑