题意:有最多100天 每天有一个食物量 你一开始有一个最大胃口表示你最开始能吃多少食物

   如果你昨天吃了 那么今天的胃口为昨天的2/3 如果你前天吃了 昨天没吃 那么你的胃口可以恢复到前天的情况

   如果你有连续两天没吃了 那么你就可以恢复到最大胃口了 问怎样安排使一共吃到的食物最多

题解:就裸裸的DP了,反正从没出过DP(的DP选手

   dp[i][j][k]表示第i天结束后 当前的胃口能级为j 这一天进行的操作k k为0表示今天吃了 k为1表示今天没吃

   那么转移也没什么难的了  转移模拟这几种状态即可

   今天吃由昨天转移来的

   dp[i][j][0] = max(dp[i][j][0], dp[i - 1][j - 1][0] + 今天吃);
       dp[i][j][1] = max(dp[i][j][1], dp[i - 1][j][0]);  今天不吃

   今天吃由前天转移来的  dp[i][j][0] = max(dp[i][j][0], dp[i - 2][j][0] + 今天吃]));

   还要处理一下由大前天转移过来的 这时候你今天吃 能级就为1 今天不吃能级就为0

   反正就xjb搞吧... 我和铜牌题打起来了

#include <bits/stdc++.h>
using namespace std; int q[];
int e[];
int dp[][][]; int main()
{
int n, m;
scanf("%d%d", &n, &m);
memset(dp, , sizeof(dp)); for(int i = ; i <= n; i++) scanf("%d", &q[i]);
e[] = m;
for(int i = ; i <= n; i++) e[i] = e[i - ] * / ; for(int i = ; i <= n; i++)
{
dp[i][][] = min(q[i], e[]);
if(i > )
{
for(int j = ; j <= i - ; j++)
{
dp[i][][] = max(dp[i][][], dp[i - ][j][] + min(q[i], e[]));
dp[i][][] = max(dp[i][][], dp[i - ][j][] + min(q[i], e[]));
}
} if(i > )
{
for(int j = ; j <= i - ; j++)
{
dp[i][][] = max(dp[i][][], dp[i - ][j][]);
dp[i][][] = max(dp[i][][], dp[i - ][j][]);
}
} for(int j = ; j <= i; j++)
{
dp[i][j][] = max(dp[i][j][], dp[i - ][j - ][] + min(q[i], e[j]));
dp[i][j][] = max(dp[i][j][], dp[i - ][j][]);
if(i > )
dp[i][j][] = max(dp[i][j][], dp[i - ][j][] + min(q[i], e[j]));
}
} int ans = ;
for(int i = ; i <= n; i++)
{
for(int j = ; j <= i; j++)
for(int k = ; k < ; k++)
ans = max(ans, dp[i][j][k]);
}
printf("%d\n", ans);
return ;
}
/*
8 900
900 600 40 400 20 266 10 177
*/

gym101673G. A Question of Ingestion (DP)的更多相关文章

  1. Gym-101673 :East Central North America Regional Contest (ECNA 2017)(寒假自训第8场)

    A .Abstract Art 题意:求多个多边形的面积并. 思路:模板题. #include<bits/stdc++.h> using namespace std; typedef lo ...

  2. 2017-2018 ACM-ICPC East Central North America Regional Contest (ECNA 2017) Solution

    A:Abstract Art 题意:给出n个多边形,求n个多边形分别的面积和,以及面积并 思路:模板 #include <bits/stdc++.h> using namespace st ...

  3. ECNA 2017

    ECNA 2017 Abstract Art 题目描述:求\(n\)个多边形的面积并. solution 据说有模板. Craters 题目描述:给定\(n\)个圆,求凸包的周长. solution ...

  4. Careercup 论坛上较有意思的题目整理

    # 数据结构类 ### 线段树 segment tree http://www.careercup.com/question?id=5165570324430848 找区间内的value的个数 二维线 ...

  5. LeetCode OJ:Climbing Stairs(攀爬台阶)

    You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...

  6. Wannafly挑战赛1

    地址:https://www.nowcoder.com/acm/contest/15#question A(树形dp) 分析 dp[i][0],dp[i][1]分别表示以i为根的子树中,有多少个点到i ...

  7. hdu 3401 单调队列优化DP

    Trade Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status ...

  8. dp --- hdu 4939 : Stupid Tower Defense

    Stupid Tower Defense Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/ ...

  9. CF687C. The Values You Can Make[背包DP]

    C. The Values You Can Make time limit per test 2 seconds memory limit per test 256 megabytes input s ...

随机推荐

  1. js坑爹笔试题目汇总(持续更新中)

    把你的面试官问倒,你就是一个合格的面试者了,以下总结一些易错的js笔试题目,会持续更新中.欢迎关注 1,考察this var length = 10 function fn(){ alert(this ...

  2. Codeforces Round #324 (Div. 2)C. Marina and Vasya set

                                                          C. Marina and Vasya   Marina loves strings of ...

  3. java SocketChannel and ServerSocketChannel

    1 SocketChannel 1.1 打开一个SocketChannel SocketChannel socketChannel = SocketChannel.open(); socketChan ...

  4. 步长为float

    import numpy as np for i in np.arange(0.005, 0.05, 1): print(i)

  5. https://security.stackexchange.com/questions/68405/what-is-tmunblock-cgi-and-can-it-be-exploited-by-shellshock-linux-apache-w

    hndUnblock.cgi   Line #1124 : 187.38.233.45 - - [15/Jan/2018:21:36:45 +0800] "GET /hndUnblock.c ...

  6. NinePatchChunk.java分析

    最近在Swing中使用.9图片,用到了NinePatchChunk.java文件,但是发现有时会出现无法完美展示的情况,决定修复一下这个问题,顺便研究一些.9的绘制过程 通过分析发现draw函数先是计 ...

  7. 服务器可用的Socket

    "; IPAddress ServerIp = IPAddress.Parse("112.124.46.251"); IPEndPoint iep = new IPEnd ...

  8. .net 接收存储过程的返回值 。。。。

    .net 接收存储过程的返回值 .... Posted on 2009-06-10 20:26 且行且思 阅读(...) 评论(...) 编辑 收藏 例如在向数据库添加新数据时,需要检测是否有重复 本 ...

  9. Window 无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-l1-1-0.dll。尝试重新安装该程序以解决此问题。

    现象: 解决办法: 方法一:缺什么补什么 http://www.greenxf.com/soft/125654.html 把api-ms-win-crt-runtime-l1-1-0.dll下载到电脑 ...

  10. IDEA中Spark读Hbase中的数据

    import org.apache.hadoop.hbase.HBaseConfiguration import org.apache.hadoop.hbase.io.ImmutableBytesWr ...