HDU - 4221 贪心
题意:
你有n个任务,每一个任务有一个完成所需时间AI,和一个截止时间BI。时间从0开始,如果完成任务的时间(设这个时间为ans)大于BI那么就会收到ans-BI的惩罚,问你完成所有这些任务你会收到的最大惩罚是多少。让你求这个惩罚的最小值
题解:
刚开始以为让找的是完成每一个任务所受惩罚的和的最小值。最后才发现题意读错了。。。
假设有两个任务,一个任务为a1,b1,另一个任务是a2,b2.且b2>b1,起始时间为tmp
那么如果先完成第一个任务耗时最大值为max(tmp+a1+a2-b2,tmp+a1-d1)
如果先完成第二个任务耗时最大值为max(tmp+a2+a1-d1,tmp+a2-d2)>max(tmp+a1+a2-b2,tmp+a1-d1)
代码:
1 #include<stdio.h>
2 #include<string.h>
3 #include<iostream>
4 #include<algorithm>
5 #include<math.h>
6 #include<vector>
7 #include<queue>
8 #include<stack>
9 #include<map>
10 using namespace std;
11 typedef long long LL;
12 const int maxn=505;
13 //const LL MAX=1e15;
14 const int INF=0x3f3f3f3f;
15 const double eps=1e-8;
16 const double PI=3.1415926;
17 const int mod = 1e9+7;
18 const int MAX=100000+10;
19 struct Time
20 {
21 LL s,e;
22 } T[MAX];
23 bool cmp(Time a,Time b)
24 {
25 return a.e<b.e;
26 }
27 int main()
28 {
29 LL cas,i,n,tag=1;
30 LL ans;
31 cin>>cas;
32 while(cas--)
33 {
34 scanf("%I64d",&n);
35 for(i=0; i<n; i++)
36 scanf("%I64d%I64d",&T[i].s,&T[i].e);
37
38 sort(T,T+n,cmp);
39 ans=0;
40 LL tmp=0;
41 for(i=0; i<n; i++)
42 {
43 tmp+=T[i].s;
44 if(tmp-T[i].e>ans)
45 ans=tmp-T[i].e;
46 }
47 printf("Case %I64d: %I64d\n",tag++,ans);
48 }
49 return 0;
50 }
HDU - 4221 贪心的更多相关文章
- D - 淡黄的长裙 HDU - 4221(贪心)
D - 淡黄的长裙 HDU - 4221(贪心) James is almost mad! Currently, he was assigned a lot of works to do, so ma ...
- Hdu 5289-Assignment 贪心,ST表
题目: http://acm.hdu.edu.cn/showproblem.php?pid=5289 Assignment Time Limit: 4000/2000 MS (Java/Others) ...
- hdu 4803 贪心/思维题
http://acm.hdu.edu.cn/showproblem.php?pid=4803 话说C++还卡精度么? G++ AC C++ WA 我自己的贪心策略错了 -- 就是尽量下键,然后上 ...
- hdu 1735(贪心) 统计字数
戳我穿越:http://acm.hdu.edu.cn/showproblem.php?pid=1735 对于贪心,二分,枚举等基础一定要掌握的很牢,要一步一个脚印走踏实 这是道贪心的题目,要有贪心的意 ...
- hdu 4974 贪心
http://acm.hdu.edu.cn/showproblem.php?pid=4974 n个人进行选秀,有一个人做裁判,每次有两人进行对决,裁判可以选择为两人打分,可以同时加上1分,或者单独为一 ...
- hdu 4982 贪心构造序列
http://acm.hdu.edu.cn/showproblem.php?pid=4982 给定n和k,求一个包含k个不相同正整数的集合,要求元素之和为n,并且其中k-1的元素的和为完全平方数 枚举 ...
- HDU 2307 贪心之活动安排问题
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2037 今年暑假不AC Time Limit: 2000/1000 MS (Java/Others) ...
- HDU 1052 贪心+dp
http://acm.hdu.edu.cn/showproblem.php?pid=1052 Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS ...
- HDU 2111 Saving HDU【贪心】
解题思路:排序后贪心,和fatmouse's trade 类似 Saving HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: ...
随机推荐
- GCC 概述:C 语言编译过程详解
Tags: C Description: 关于 GCC 的个人笔记 GCC 概述 对于 GCC 6.1 以及之后的版本,默认使用的 C++ 标准是 C++ 14:使用 -std=c++11 来指定使用 ...
- Python+Docker+Flask+pyecharts实现数据可视化
1.数据加工pyecharts图实现: 数据源:本地CSV文件 ps:由于是跟生产环境做交互,生产环境指标由HSQL加工,使用存储过程挂后台定时运行,后使用python实现导出及定时分发,本地pyth ...
- 不要把file,process或者super权限授予管理员以外的账号
file权限的主要作用是通过select ....into outfile 写到服务器上具有写权限的目录下,作为文本格式存放,具有权限的目录也就是启动mysql时的用户权限目录.(没有理解) 可以将有 ...
- 修改机器的hostname
vi /etc/sysconfig/network hostname=你想设置的主机名 不重启器的情况下使显示名称变成 hostname 主机名
- ctfhub技能树—web前置技能—http协议—请求方式
打开靶机环境(每次打开都要30金币,好心疼啊) 题目描述为"请求方式" HTTP的请求方式共有八种 1.OPTIONS 返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向 ...
- [APUE] 文件 I/O
文件操作相关 API:open, read, write, lseek, close. 多进程共享文件的相关 API:dup, dup2, fcntl, sync, fsync, ioctl. 文件操 ...
- 关于SQL Server 镜像数据库快照的创建及使用
从SQL Server 2005 SP 起,SQL 开始支持数据库镜像.它的设计目的是试图为SQL Server 提供一个具有实时性数据同步的灾难恢复技术,即能够提供数据冗余备份,切换起来比较方便.每 ...
- python-列表包字典-根据字典的某一个键的值来进行排序
python-列表包字典-根据字典的某一个键的值来进行排序 列表包字典的数据结构 要实现按照字典中的某一个键所对应的值进行排序 有两种办法 方法一,使用列表的sort方法 由小到大排 列表.sort( ...
- CentOS 7.4通过rpm包离线安装 Mysql8.0并部署主从复制(附从库备份脚本)
一. 部署MySQL (两个节点都做) 下载 rpm包 wget https://goodrain-pkg.oss-cn-shanghai.aliyuncs.com/mysql8.rpm tar xv ...
- QUIC协议分析-基于quic-go
quic协议分析 QUIC是由谷歌设计的一种基于UDP的传输层网络协议,并且已经成为IETF草案.HTTP/3就是基于QUIC协议的.QUIC只是一个协议,可以通过多种方法来实现,目前常见的实现有Go ...