本文主要是介绍UVA 11729突击战(贪心),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
思路:要时间最短,即要求尽量多的任务同时进行,则把执行时间由大到小排序即可。#include <iostream>
#include <map>
#include <deque>
#include <queue>
#include <stack>
#include <string>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <map>
#include <set>
using namespace std;
struct abc
{int b,j;
}a[1005];
bool cmp(abc x,abc y)
{return x.j>y.j;
}
int main()
{int n,k=1;while(scanf("%d",&n)&&n){int i,sum,max;for(i=0;i<n;i++)cin>>a[i].b>>a[i].j;sort(a,a+n,cmp);sum=max=a[0].b+a[0].j;for(i=1;i<n;i++){a[i].b+=a[i-1].b;sum=a[i].b+a[i].j;if(max<sum) max=sum;}printf("Case %d: %d\n",k++,max);}return 0;
}
这篇关于UVA 11729突击战(贪心)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!