例题1.2 突击战 UVa11729

1.题目描述:点击打开链接

2.解题思路:本题利用贪心法解决。由于让总时间最短,因此可以先安排执行时间最长的任务,因为安排任务的总时间是无法改变的,总时间取决于执行任务的最长时间,因此应该先安排执行时间最长的任务。具体证明自己画图即可得证。

3.代码:

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<algorithm>
#include<string>
#include<sstream>
#include<set>
#include<vector>
#include<stack>
#include<map>
#include<queue>
#include<deque>
#include<cstdlib>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<ctime>
#include<functional>
using namespace std;

typedef pair<int, int> P;
priority_queue<P,vector<P>, less<P> >q;//执行时间最长的先出列
int n;
int main()
{
	//freopen("t.txt", "r", stdin);
	int rnd = 0;
	while (~scanf("%d", &n)&&n)
	{
		while (!q.empty())q.pop();
		int a, b;
		int ans = 0;//总时间
		int start = 0;//开始时间
		for (int i = 0; i < n; i++)
		{
			cin >> a >> b;
			q.push(P(b, a));
		}
		while (!q.empty())
		{
			P u = q.top(); q.pop();
			int a = u.first, b = u.second;
			start += b;
			if (!ans)ans += a + b;
			if (start + a > ans)ans += (start + a - ans);
		}
		printf("Case %d: ", ++rnd);
		cout << ans << endl;
	}
	return 0;
}
时间: 2024-10-13 16:04:45

例题1.2 突击战 UVa11729的相关文章

UVA 11729 Commando War 突击战 【贪心】

题目链接: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=28436 贪心 按照工作执行时间的从长到短进行排序,之后计算总的执行时间(反证见刘汝佳P4) 计算方法: 先按照交代任务的时间依次累加,就是本次任务开始执行时的时间,这个时间加上任务完成的时间就是这次任务执行完毕后需要的总时间 这个总时间如果没有之前的总时间长的话表示这次任务的执行时间是包括在上次任务的执行时间之间的 超出的话就要更新总的任务执行时间 最后输出总的

突击战 (UVA 11729)

题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=28436 思路:任务从开始时就不停执行,与其他任务毫无关联,当然是执行时间越长的任务越早执行好了 #include <iostream> #include <algorithm> #include <cstdio> #define RPE(i,n) for(int i=0;i<n;i++) using namespace std; c

3d引擎列表

Agar - 一个高级图形应用程序框架,用于2D和3D游戏. Allegro library - 基于 C/C++ 的游戏引擎,支持图形,声音,输入,游戏时钟,浮点,压缩文件以及GUI. Axiom 引擎 - OGRE的衍生引擎. Baja 引擎 - 专业品质的图像引擎,用于The Lost Mansion. Boom - Doom代码的一部分.由TeamTNT开发 Build 引擎 - 一个第一人称射击游戏引擎,用于Duke Nukem 3D. BYOND - “Build Your Own

原来大家最拼命的时候是这样子的。

1.读医学院的,曾经在一个上10门专业课的学期里,同时考了GRE,新TOEFL,再加上平时的上课&见习.  话说医学院是没有选课的,学校按照你读哪个学期就给你安排好这学期所有的课,基本从早到晚排满,你自由选择课只有2种情况,一个是晚上的选修课,一个是你要重修以前的课.所以,那学期按医学院正常的安排是10门专业课.  为了考GRE,前后总共只用了一个月左右,那个月基本逃了所有能逃的课在家复习,自己都认为不可能做到.每天晚上看到3,4点,早上9点左右起床,下午1-2点睡觉,除了吃饭睡觉其余时间都在背

高效执行 协作共赢

高效执行 协作共赢    ——记南安香草世界拓展训练 6月11日下午,带着夏日里难得的凉爽,在公司人力资源部的组织下,我们操作部和工程部二班的值班经理.中控.调度.司机.维修等岗位的员工来到了位于南安天柱山的香草世界,展开了为期一天半的拓展训练.这不是一次普通的郊游或娱乐活动,而是生动活波又带有教育意义的体验式培训. 下午,南安香草世界山雨欲来,略带一丝寒意.虽然不是室外活动的最佳天气,但是抵挡不住大家参与活动的热情,短暂休整简单用餐之后,开始了正式的活动:根据人数组建参与活动的四个队,取队名.

诺曼底登陆复盘+二战简史:4星|《实践智慧》

日文原版出版于2014年诺曼底登陆70周年前.主要内容其实是诺曼底登陆的详细复盘,为了交代清楚诺曼底,又顺便回顾了二战简史. 二战中的指挥官,书中重点分析艾森豪威尔.按书中给出的材料与说法,美军赋予前线指挥官比较多的自由,英军指挥官蒙哥马利是个完美主义者,不敢冒险,因此打的不好,德军除了希特勒刚愎自用.越级指挥外,组织结构也是一团乱麻. 不看不知道,诺曼底登陆是一个超级复杂的工程. 盟军在诺曼底登陆之前尝试过一次小规模的登陆,虽然以失败告终,但是积累了非常宝贵的经验. 作者在前后部分讲“实践智慧

uva----11729 Commando war (突击战争)

G Commando War Input: Standard Input Output: Standard Output "Waiting for orders we held in the wood, word from the front never came By evening the sound of the gunfire was miles away Ah softly we moved through the shadows, slip away through the tree

黑书例题 Fight Club 区间DP

题目可以在bnuoj.soj等OJ上找到. 题意: 不超过40个人站成一圈,只能和两边的人对战.给出任意两人对战的输赢,对于每一个人,输出是否可能是最后的胜者. 分析: 首先序列扩展成2倍,破环成链. dp[i][j]表示i和j能够相遇对打,那么dp[i][i+n]为真代表可以成为最后胜者. 枚举中间的k,若i和j都能和k相遇,且i和j至少一人能打赢k,那么i和j可以相遇. 复杂度o(n^3) 1 #include<cstdio> 2 #include<cstring> 3 usi

解密:腾讯如何打造一款实时对战手游

2015年以来,手机游戏的市场偏好,逐渐从早期的休闲类.跑酷类.卡牌类游戏,转向重度.操作性更强的ARPG .FPS..MOBA类游戏.因此实时对战这一游戏玩法,也逐渐成为了手机游戏的一个核心玩法.纵观AppStore畅销榜前十的游戏,过半都支持玩家实时的PK或者合作攻关.由于实时对战有玩家之间自发进行强互动的特点,活跃度和社交强度都是比较高,为游戏的用户活跃和流水的提高奠定了坚实的基础. 腾讯的游戏开发团队,很早就观察到实时对战这一核心玩法对游戏生命周期影响的重要性,因此在自研产品方面,加大力