UVa 11729 - Commando War
【题目翻译】:

题目分析:因为任务是可以并行的执行,所以直觉上是花费时间长的任务优先去部署。但是这到题目还给你交待任务的时间,所以容易让人想多了。
不管有没有交待任务的时间,对于任务x和y,只可能有两种情况。x在y之前结束,和x在y之后结束。这里讨论x在y之前完成。
未交换x和y的位置时,完成时间为:B[x] + B[y] + J[y]
交换h和y位置之后,完成时间为:B[y] + B[x] + J[x]
如果J[y] 大于J[x],那么交换后,时间变短了,所以应该将y放在x之前执行。另一种情况也类似。
这样证明以后就可以大胆的用贪心策略了。
#include<Cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
struct People
{
    int b,j;
} p[1005];
int cmp(People a,People b)
{
    return a.j>b.j;
}
int main()
{
    int n,cas=0;
    while(scanf("%d",&n)!=EOF&&n)
    {
        cas++;
        for(int i=0; i<n; i++)
            scanf("%d %d",&p[i].b,&p[i].j);
        sort(p,p+n,cmp);
        int sum=0,ans=0;
        for(int i=0; i<n; i++)
        {
            sum+=p[i].b;
            ans=max(ans,sum+p[i].j);
        }
        printf("Case %d: %d\n",cas,ans);
    }
    return 0;
}
UVa 11729 - Commando War的更多相关文章
- Uva 11729  Commando War (简单贪心)
		Uva 11729 Commando War (简单贪心) There is a war and it doesn't look very promising for your country. N ... 
- 贪心 UVA 11729 Commando War
		题目传送门 /* 贪心:按照执行时间长的优先来排序 */ #include <cstdio> #include <algorithm> #include <iostrea ... 
- UVA 11729 - Commando War(贪心 相邻交换法)
		Commando War There is a war and it doesn't look very promising for your country. Now it's time to ac ... 
- UVa 11729 - Commando War(贪心)
		"Waiting for orders we held in the wood, word from the front never came By evening the sound of ... 
- [ACM_水题] UVA 11729 Commando War [不可同时交代任务 可同时执行 最短完成全部时间 贪心]
		There is a war and it doesn't look very promising for your country. Now it's time to act. You have a ... 
- UVa 11729 Commando War 突击战
		你有 n 个部下,每个部下需要完成一个任务.第 i 个部下需要你花 Bi 分钟交待任务,然后他会立刻独立地.无间断地执行 Ji 分钟后完成任务.你需要选择交待任务的顺序,使得所有任务尽早执行完毕(即最 ... 
- UVa 11729 Commando War 【贪心】
		题意:有n个部下,交待每个部下完成他相应的任务需要bi的时间,然后完成这项任务需要ji的时间, 选择交待任务的顺序,使得总的花费的时间最少 因为不管怎么样,交待所需要的n*bi的时间都是要花费的, 然 ... 
- Commando War
		Commando War“Waiting for orders we held in the wood, word from the front never cameBy evening the so ... 
- cogs 1446. [Commando War,Uva 11729]突击战
		1446. [Commando War,Uva 11729]突击战 ★ 输入文件:commando.in 输出文件:commando.out 简单对比时间限制:1 s 内存限制:64 ... 
随机推荐
- 用Masonry实现键盘的收回和弹出
			首先说几点:我一般将数值类型的约束用mas_equalTo,而相对于某个控件,或者某个控件的某个约束,我会使用equalTo,如:make.size.mas_equalTo(CGSizeMake(10 ... 
- 基础的 Linux 网络命令,你值得拥有
			导读 有抱负的 Linux 系统管理员和 Linux 狂热者必须知道的.最重要的.而且基础的 Linux 网络命令合集.在 It's FOSS 我们并非每天都谈论 Linux 的"命令行方面 ... 
- Windows API调用外部程序
			要在应用程序中启动其他的应用程序,有3个函数可以使用,下面我一一说说他们(我以打开D:\Program Files\zeecalls\目录下的zeecalls.exe应用程序为例): 1.Winexe ... 
- 入門必學NO.1 Android 初學特訓班(第四版) 目錄
			第 01 章 敲開 Android 的開發大門工欲善其事,必先利其器,要學習 Android 應用程式,先取得功能強大的開發工具,就可讓學習事半功倍. 1.1 Android 是啥米?1.2 建構 A ... 
- hihocoder 1236(2015北京网络赛 J题) 分块bitset乱搞题
			题目大意: 每个人有五门课成绩,初始给定一部分学生的成绩,然后每次询问给出一个学生的成绩,希望知道在给定的一堆学生的成绩比这个学生每门都低或者相等的人数 因为强行要求在线查询,所以题目要求,每次当前给 ... 
- Codeforces Round #326 (Div. 2)-Duff in Love
			题意: 一个数x被定义为lovely number需要满足这样的条件:不存在一个数a(a>1),使得a的完全平方是x的因子(即x % a2 != 0). 给你一个数n,求出n的因子中为love ... 
- 开发基于Handoff的App(Swift)
			iOS8推出一个新特性,叫做Handoff.Handoff中文含义为换手(把接力棒传给下一个人),可以在一台Mac和iOS设备上开始工作,中途将工作交换到另一个Mac或iOS设备中进行 ... 
- Altium Designer 2013 13 复制出错的问题
			刚换成Altium Designer 2013 13,谁知先碰了钉子,为了赶进度需要复制以前的一个原理图上的部分电路图,一复制尽然报错不能复制,通过百度和向高人求助,总结一下两种方法: 1.在电脑上虚 ... 
- IOS界面切换
			好吧!表示这几天要实现 phonegap 打开IOS原生界面,因此也查询了一些方案. 有如下几种: 第一种:navigationcontroller //进入下层 [self.navigationC ... 
- pyqt5 笔记(三)py2exe 实现代码打包exe
			python3.4 安装64位的版本 py2exe 下载地址: https://pypi.python.org/pypi/py2exe/0.9.2.0#downloads cmd——>进入pyf ... 
