随笔分类 - 动态规划 - 线性dp
摘要:题目大意:给定一个 N 个非负整数数组成的序列,每个点有一个贡献值,现选出其中若干数,使得每连续的 K 个数中至少有一个数被选,要求选出的数贡献值最小。 题解:设 $dp[i]$ 表示考虑了序列前 i 个数的情况,且第 i 个数被选上时的最小贡献值,因此状态转移方程为:$dp[i]=min\{dp[
阅读全文
摘要:题目大意:给定 N 个数字,编号分别从 1 N,M 个位置,N 个数字按照相对大小顺序放在 M 个位置里,每个数放在每个位置上有一个对答案的贡献值,求一种摆放方式使得贡献值最大。 题解:一道典型的线性dp问题,设 $dp[i][j]$ 表示前 i 个数摆放在了不超过前 j 个位置,且第 i 个数字正
阅读全文
摘要:1. 通过邻项交换法可知,怨气值大的孩子分得的饼干数也应该多(否则交换之后得到的解更优)。 2. 观察目标函数的性质,可知目标函数本身是由孩子饼干数的相对大小得到,因此此题中关注的是相对大小。 状态设计:$dp[i][j]$表示前 i 个人分 j 个饼干的最小怨气值。(i,j)是问题的阶段 另外,在
阅读全文
摘要:pre:在网格中,凸多边形可以按行(row)分解成若干段连续的区间 [ l , r ] ,且左端点纵坐标的值(col)满足先减后增,右端点纵坐标先增后减。 阶段:根据这个小发现,可以将阶段设置成每一行,因此,解决这个问题一共需要N个阶段。 状态:除了阶段外,表示每一个状态还需要记录下当前阶段下一共选
阅读全文
摘要:学到了一个引理:在满足S最小化的条件下,一定存在一种构造序列B的方案,使得序列B中的数值都来自于A中。(数学归纳法+中位数定理得证) 对于状态的表示来说,首先肯定有一个 i ,表示选到了第 i 个数时对应的最优解,由于需要维护序列单调性,因此需要再在状态中加入一个因素 j ,表示在第 i 位选了离散
阅读全文
摘要:题目中有一个重要的信息是:每一种灯泡只能换成比它电压更大的灯泡,因此电压的大小限制了状态的转移。因此,在这里按照电压从小到大把每种灯泡排序,使得在考虑后面的灯泡时,前面的灯泡自然可以换成后面的灯泡。状态转移方程为$dp[i]=max(dp[j]+(s[i] s[j]) c[i]+k[i]),j\in
阅读全文

浙公网安备 33010602011771号