UVA 11729 突击战

这道题一样简单,使用贪心即可。这一小节都只需用贪心,加油吧!

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath> 
#define xh(a,b,c)for(int a=b;a<=c;a++)
#define dxh(a,b,c)for(int a=b;a>=c;a--)
using namespace std;

struct bx{
	int jd,zx;
};
struct bx a[1024];
int cmp(bx a,bx b){
	return a.zx>b.zx||a.zx==b.zx&&a.jd<b.jd;
}
int main(){
	int n,t1,t2,tmax,tot=0;
	while(cin>>n&&n!=0){
	    xh(i,1,n)cin>>a[i].jd>>a[i].zx;
	    sort(a+1,a+n+1,cmp);
	    t1=0;tmax=0;
        xh(i,1,n){
        	t1+=a[i].jd;
        	t2=t1+a[i].zx;
        	tmax=max(tmax,t2);
		}
		cout<<"Case "<<++tot<<": "<<tmax<<endl;
	}
	return 0;
}

很容易吧,相信你一定可以AC的!!!

你可能感兴趣的:(UVA 11729 突击战)