dp[i][j][0/1]:第i天处于第j状态要不要吃。

const int maxn = 1e2 + 5;
int n, a[maxn], b[maxn];
int dp[maxn][maxn][2]; int main() {
read(n), read(b[1]);
rep(i, 1, n) read(a[i]);
rep(i, 2, n) b[i] = b[i - 1] * 2 / 3; rep(i, 1, n) {
rep(j, 1, i) {
dp[i][j][0] = dp[i - 1][j + 1][0];
dp[i][j][1] = dp[i - 1][j + 1][0] + min(a[i], b[j]);
if (j >= 2) {
dp[i][j][0] = max(dp[i][j][0], dp[i - 1][j - 1][1]);
dp[i][j][1] = max(dp[i][j][1], dp[i - 1][j - 1][1] + min(a[i], b[j]));
}
if (i > 3) {
dp[i][1][0] = max(dp[i][1][0], max(dp[i - 3][j][0], dp[i - 3][j][1]));
dp[i][1][1] = max(dp[i][1][1], dp[i][1][0] + min(a[i], b[1]));
} }
} int ans = 0;
rep(i, 1, n) {
ans = max(max(dp[n][i][0], dp[n][i][1]), ans);
}
writeln(ans);
return 0;
}

最新文章

  1. 第六节:Vue过滤器的用法和自定义过滤器
  2. ADB工具包15秒快速安装器,已集合ADB、FASTBOOT工具箱和最新的驱动程序
  3. android 获取资源文件 r.drawable中的图片转换为drawable、bitmap
  4. How to Write a Spelling Corrector
  5. Android Glide+CircleImageView实现加载圆形图片列表
  6. JSON 之 SuperObject(10): Merge、Clone、ForcePath
  7. linux sed 命令
  8. 容器的范围 .xml
  9. Tomcatserverhttps协议配置简单介绍
  10. 完整的拆分nginx访问日志
  11. 浅谈移动Web开发(上):深入概念
  12. Linux开机启动图片修改
  13. 33.Django ModelForm
  14. mysql的if用法解决同一张数据表里面两个字段是否相等统计数据量。
  15. JS知识点随笔
  16. LeetCode(92):反转链表 II
  17. [CF543A]/[CF544C]Writing Code
  18. Linux Tomcat安装部署项目
  19. unity3d 射线的原理,基础用法
  20. HBase中无法使用backspace删除

热门文章

  1. vue路由总结
  2. POJ 1611 The Suspects (并查集+数组记录子孙个数 )
  3. AutoItLibrary安装和常见问题解决
  4. sql 逻辑运算符 优先级
  5. cassandra压缩——从文档看,本质上也应该是在做块压缩
  6. C# GDI生成清晰【高质量】图片
  7. HihoCoder 1502 : 最大子矩阵 (双指针)
  8. 使用 WinSCP(下载) 上文件到 Linux图文教程
  9. SIP协议&开源SIP服务器搭建和客户端安装
  10. Linux下的RTC子系统