【hdu 6000】Wash
【链接】 我是链接,点我呀:)
【题意】
在这里输入题意
【题解】
因为每件衣服都是没有区别的。
只有洗衣机不同会影响洗衣时间。
那么我们把每台洗衣机洗衣的时间一开始都加入到队列中。
比如{2,3,6,7}
这个队列里面的数字就代表了如果某件衣服用这台洗衣机洗的话,要在什么时刻洗好。
对于每一件衣服i。
取出队列的头。
这里为2
那么就a[i] = 2,表示第i件衣服最早在a[i] = 2时刻洗好
然后再把2+t[i]加入到队列中即{3,2+t[i],6,7} (这里t[i]即等于2)
每次都取出队头即可。
然后是烘干的过程。
贪心的方法是,最晚洗好的那一件衣服
(这里因为我们第一步贪心的时候,是顺序枚举每一件衣服的,所以最晚洗好的那一件衣服一定是a[L])
一定要用最快的烘干机去烘干它。
按照这个去贪心就好。
这个过程其实不是很好理解
代码中 取出最快的烘干机之后,把{temp.first+temp.second,temp.second}再次加入到队列中,实际含义
其实就是说,如果有另外一件衣服还要用这台机器烘干的话,那么得多出来temp.second的时间,让给前面
的衣服->但是也可能不用让,不用让也没事,那么之前得到的一定是更大的值.
这点是需要动脑子的地方。
【代码】
/*
1.Shoud it use long long ?
2.Have you ever test several sample(at least therr) yourself?
3.Can you promise that the solution is right? At least,the main ideal
4.use the puts("") or putchar() or printf and such things?
5.init the used array or any value?
6.use error MAX_VALUE?
7.use scanf instead of cin/cout?
8.whatch out the detail input require
*/
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 1e6+10;
ll a[N];
int T,l,n,m;
priority_queue <pair<ll,ll> ,vector <pair<ll,ll> >,greater <pair<ll,ll> > > q;
int main(){
#ifdef LOCAL_DEFINE
freopen("F:\\c++source\\rush_in.txt", "r", stdin);
#endif
int kase = 0;
ios::sync_with_stdio(0),cin.tie(0);
cin >> T;
while (T--){
cin >> l >> n >> m;
for (int i = 1;i <= n;i++){
ll x;
cin >> x;
q.push({x,x});
}
for (int i = 1;i <= l;i++){
a[i] = q.top().first;
pair<ll,ll> temp = q.top();
q.pop();
temp.first += temp.second;
q.push(temp);
}
while (!q.empty()) q.pop();
for (int i = 1;i <= m;i++){
ll x;
cin >> x;
q.push(make_pair(x,x));
}
ll ma = 0;
for (int i = l;i >= 1;i--){
pair <ll,ll> temp = q.top();
q.pop();
ma = max(ma,a[i]+temp.first);
temp.first+=temp.second;
q.push(temp);
}
while (!q.empty()) q.pop();
cout << "Case #"<<++kase<<": "<<ma<<endl;
}
return 0;
}
【hdu 6000】Wash的更多相关文章
- 【HDU 6000】Wash(贪心)
Problem Description Mr.Panda is about to engage in his favourite activity doing laundry! He's brough ...
- 【数位dp】【HDU 3555】【HDU 2089】数位DP入门题
[HDU 3555]原题直通车: 代码: // 31MS 900K 909 B G++ #include<iostream> #include<cstdio> #includ ...
- 【HDU 5647】DZY Loves Connecting(树DP)
pid=5647">[HDU 5647]DZY Loves Connecting(树DP) DZY Loves Connecting Time Limit: 4000/2000 MS ...
- -【线性基】【BZOJ 2460】【BZOJ 2115】【HDU 3949】
[把三道我做过的线性基题目放在一起总结一下,代码都挺简单,主要就是贪心思想和异或的高斯消元] [然后把网上的讲解归纳一下] 1.线性基: 若干数的线性基是一组数a1,a2,a3...an,其中ax的最 ...
- 【HDU 2196】 Computer(树的直径)
[HDU 2196] Computer(树的直径) 题链http://acm.hdu.edu.cn/showproblem.php?pid=2196 这题可以用树形DP解决,自然也可以用最直观的方法解 ...
- 【HDU 2196】 Computer (树形DP)
[HDU 2196] Computer 题链http://acm.hdu.edu.cn/showproblem.php?pid=2196 刘汝佳<算法竞赛入门经典>P282页留下了这个问题 ...
- 【HDU 5145】 NPY and girls(组合+莫队)
pid=5145">[HDU 5145] NPY and girls(组合+莫队) NPY and girls Time Limit: 8000/4000 MS (Java/Other ...
- 【hdu 3537】Daizhenyang's Coin
Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...
- 【49.23%】【hdu 1828】Picture
Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...
随机推荐
- CMDB学习之七-实现采集错误捕捉,日志信息处理
首先采集disk的具体实现方上代码: # !/usr/bin/env python # -*- coding:utf-8 -*- from .base import BasePlugin import ...
- linux 配置全局jdk环境
1.在usr/local下新建software文件夹(mkdir software),将下载的jdk和tomcat放在此文件夹下 2.解压 tar -xzvf jdk-8u191-linux-x64. ...
- Mysql学习总结(19)——Mysql无法创建外键的原因
在MySQL中创建外键时,经常会遇到问题而失败,这是因为Mysql中还有很多细节需要我们去留意,我自己总结并查阅资料后列出了以下几种常见原因. 1. 两个字段的类型或者大小不严格匹配.例如,如果一个 ...
- Bag标签之中的一个行代码实行中文分词实例3
例3: 分词(返回一个书包.以_0._1._2 ...取出分好的词) <bag id=words act=2words>我喜欢黄色高领T恤衫</bag> 注意没有name属性 ...
- java中TCP传输协议
class TcpClient { public static void main(String[] args) throws Exception { //创建client的socket服务,指定目的 ...
- 流媒体技术 rtp/rtcp/rtsp资料精华!
流媒体技术 rtp/rtcp/rtsp资料精华! 流媒体技术 流媒体是指在网络中使用流式(Sreaming)传输技术进行传输的连续时基媒体.如音频数据流或视频数据流,而不是一种新的媒体.流媒体技 ...
- mongodb官网文档阅读笔记:write concern
write concern保证了mongodb写操作的级别,不同的write concern设置相应了不同级别的写操作.设置的级别越高.那么写操作的性能的持久化做得越好,可是写性能也就越差. mong ...
- jquery06 jQuery.extend 给jQuery函数添加、继承 静态方法
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
- linearlayout-weight 属性作用
今天用到了weight的属性,现在就把这个属性的具体意义记录一下.也是参考网上的讲解,只不过自己验证了一下而已 参考自 http://blog.csdn.net/jincf2011/article/d ...
- 50.Node.js 连接 MySQL
转自:http://www.runoob.com/nodejs/nodejs-express-framework.html 安装驱动 本教程使用了淘宝定制的 cnpm 命令进行安装: $ cnpm i ...