UVa-11729 - Commando War:简单题
来源:互联网 发布:淘宝宝贝限时打折 编辑:程序博客网 时间:2024/05/24 08:33
因为“交代任务的时间”可以是紧凑连续的,第一次提交时,想当然的认为答案是 按照“执行任务时间”从大到小排序后 “交代任务时间”总和加上最后一个执行时间,WA
后来考虑到排序后的最后一个人执行完的时间 不一定是最晚的,因为很有肯能前一个人的执行完的时间大于最后一个人的执行完的时间。
所以问题就是解决如何求出最晚时间:是指一个“时间点”变量time 记录“交代任务”后的当前时间 那么最晚时间=max(上一次的结束时间,time+这次任务交待时间+这次任务完成时间)
后来看了刘的代码(这次思路又一样···实现起来感觉到用STL和重载运算符要比我的灵活简单多了, 学习了)
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#define LOCALusing namespace std;#define maxn 1000+5struct node{int b,j;}; node Nod[maxn];int cmp(node a,node b){return a.j>b.j;}int main(){#ifdef LOCALfreopen("in.txt","r",stdin);//freopen("out.txt","w",stdout);#endif int N,Case=0;while(scanf("%d",&N)==1&&N){printf("Case %d: ",++Case);for(int i=0;i<N;i++) {scanf("%d%d",&Nod[i].b,&Nod[i].j);}sort(Nod,Nod+N,cmp);int ans=0,time=0;for(int i=0;i<N;i++){ans=max(ans,time+Nod[i].b+Nod[i].j);time+=Nod[i].b;}printf("%d\n",ans);} return 0;}
0 0
- UVa-11729 - Commando War:简单题
- uva --11729-- Commando War
- UVa 11729 Commando War
- uva - 11729 - Commando War
- UVA 11729 - Commando War
- uva 11729 - Commando War
- Uva-11729-Commando War
- UVA 11729 - Commando War
- UVA 11729 Commando War
- UVA 11729 - Commando War
- UVA 11729 Commando War
- UVA 11729 - Commando War
- Commando War, UVa 11729
- UVa 11729 - Commando War
- UVA 11729 Commando War
- uva 11729 Commando War
- Uva 11729 Commando War
- uva 11729 Commando War
- Git 简单使用步骤
- svn基本使用
- 百度开源的数据可视化工具eCharts真心不错
- swift UITableViewCell拷贝
- Windows SDK应用
- UVa-11729 - Commando War:简单题
- android短信验证码自动填写
- 总结&备忘:__stdcall,__cdecl,extern "C"
- ios UILabel显示html文本
- linux 打包解包 压缩解压缩
- .NET学习(二)操作数据库
- 【每日学习】2015.11.20 String类的常用方法和基本数据类型的包装类
- 黑马入学测试—基础—异常机制
- IOS - LocationManager定位国内偏移,火星坐标(GCJ-02)解决方法