0
已采纳
汪恺恒
中级启示者
中级启示者
DP
已f[i]表示取小于等于i小的数能取得的最大分值,则状态转移方程为
f[i]=max(f[i-1],f[i-2]+i*b[i]);
对于i这个数,有两种情况。
①不取,则继承f[i-1]
②取,则i-1不能取,所以应由f[i-2]+i*b[i]推来
两者取最大值即可。
边界
f[1]=b[1]
最后答案就是f[1000000]
0
0