题意:给你一些井的信息,井中原有的水,当井中的水满足一定量后会被破坏并且这些水全部流入下一个井中,用多少能量能直接破坏这个井。然后问要想破坏第n口井至少要多少能量。

解题思路:这题首先是要找到从哪口井开始破坏,因为要破坏第n口井,要么直接破坏n,要么n之前有连续的几口井一同被破坏,如果中间出现了一个不破坏的井,那么之前的能量就浪费了。

一般的思路肯定是两层循环就搞定,但看到这个数据量有点怕超时,结果绕了好大的弯去找一层循环的解决办法都错了。最后看别人的思路,还是之前的两层循环就可以搞定了。自己被数据给吓到了。这题网上分类为dp,其实我感觉这题dp不是很明显。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;const int maxn = 100005;
const int inf = 0x7fffff;
int n,w[maxn],l[maxn],p[maxn];int main()
{int t,cas = 1;scanf("%d",&t);while(t--){scanf("%d",&n);for(int i = 1; i <= n; i++)scanf("%d%d%d",&w[i],&l[i],&p[i]);int ans = inf;for(int i = 1; i <= n; i++){int sum = 0, carry = 0;for(int j = i; j <= n; j++){carry += w[j];if(carry <= l[j])sum += p[j];if(sum > ans)break;}if(sum < ans) ans =sum;}printf("Case %d: Need to use %d mana points.\n",cas++,ans);}return 0;
}

hdu 1692(枚举+剪枝)相关推荐

  1. POJ 1054 恼人的青蛙 [ 枚举+剪枝 ]

    主要思想就是:先排序(按行号升序,若行号相等就按列号升序):再枚举每两个点,以两个点分别为青蛙所走路线上的第一个点和第二个点(在枚举的过程中的剪枝非常重要): // 枚举 + 剪枝 #include ...

  2. hdu4876 深搜+(随机枚举剪枝)

    题意:       给你n个数,让你从选择k个数,然后排成一个环(k个数的顺序随意,但是排成一个环后就不能变了),然后可以在这个环上任意的找连续w个数(w<=k),可以找多次,得到一个值等于当前 ...

  3. hdu 5305 回溯+剪枝

    思路:对每一条边涂上颜色1或-1,颜色值加到关联的两个点上,则一种成功的方案必须满足最后每个点的值为0. 剪枝:统计出和某个点i相关联的边的个数,如果枚举到某一条边的时候发现:abs(sum[i]) ...

  4. POJ 1054 The Troublesome Frog(枚举 + 剪枝)

    题意: http://blog.csdn.net/politropix/article/details/8456551 思路: 1. 首先针对 x 从小到大排序,然后枚举,这样为后面的剪枝提供了方便; ...

  5. hdu 4681(枚举+dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4681 思路:首先预处理出串C在A,B中的所有的位置,然后从前向后求一次最长公共子序列,从后向前求一次最 ...

  6. hdu 4421(枚举+2-sat)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4421 思路:枚举32位bit,然后2-sat判断可行性,这里给出2-sat矛盾关系构图: 1.a&am ...

  7. [HDU] 1175 连连看 - 剪枝优化后的性能飙升

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1175 方法:在每一步都要维护4个信息,当前坐标,当前方向(垂直还是水平),当前已经折了多少次和携带的 ...

  8. hdu 3006 枚举集合可以产生的所有并集的集合

    http://acm.hdu.edu.cn/showproblem.php?pid=3006 刚买的CHERRY键盘 手感真好 可惜不习惯 写代码老是打错,一个题写了一上午,都是各种按错键DEBUG. ...

  9. poj 1564 Sum It Up | zoj 1711 | hdu 1548 (dfs + 剪枝 or 判重)

    Sum It Up Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Sub ...

最新文章

  1. Codeforces Round #307 (Div. 2) D. GukiZ and Binary Operations (矩阵高速幂)
  2. 针对CMS中的tag标签理解
  3. iOS开发之Runtime关联属性
  4. oracle数据库安装跳坑
  5. 系统和服务器的关系图,服务器与客户端关系图
  6. 无法卸载_六月累积更新又出问题:打印机故障 部分程序无法打开和卸载
  7. redis怎么不让存byte_Redis 删除数据后不能自动释放内存么?
  8. VCS命令行选项总结简单脚本实例
  9. ContextLoaderListener和Spring MVC中的DispatcherServlet加载内容的区别
  10. 百度云OCR身份证识别
  11. panabit 流控大师
  12. android手机控制电视,类Siri语音控制技术 Android手机也能控制电视
  13. bzGhost 打造跨平台即时聊天软件之websocket
  14. 求和(单例模式,初始化列表,容器,迭代器)
  15. 小程序分享,禁用分享,解除禁用分享
  16. 用Freeman码链表示图像边界
  17. css 设置背景图一半_img只显示图片一部分 或 css设置背景图片只显示图片指定区域...
  18. 从“账房先生”到“中国巨型计算机之父”,慈云桂先后主导了中国四代计算机的研发...
  19. 将整个网站(包括子页)变为黑白色
  20. Android Editable

热门文章

  1. 中原证券携手神策数据,筑就线上线下融合的数字化运营体系
  2. 常用SQL Server 小语法、函数 等的实例汇总
  3. [20160813]12c开启附加日志问题.txt
  4. bzoj4514[Sdoi2016]数字配对
  5. OpenSwitch操作系统成为Linux基金会官方项目
  6. [转]Windows的批处理脚本
  7. 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(11月9日~11月13日)...
  8. springmvc+mybatis+ajax 批量插入数据
  9. 【Leetcode】Palindrome Number
  10. CSS学习笔记(十四) 我们前端是怎么跟设计师沟通的