2013年10月10日 星期四

2013/10/10 UVA 11729 - Commando War

/* http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2829 */
#include <algorithm>
#include <iostream>
#include <cstdio>

using namespace std;

struct s
{
    int b, j;
}n[1000];

bool cmp(s a, s b){ return a.j > b.j; }

int main()
{
    int N; int cnt = 0;
    while( scanf("%d", &N) ){

    cnt++;
    if( N == 0 )
        break;

    for(int i = 0; i < N; i++)
        scanf("%d %d", &n[i].b, &n[i].j);

    sort(n, n+N, cmp);

    int ans = 0, now = 0;
    for(int i = 0; i < N; i++)
    {
        now += n[i].b;
        ans = max(ans, now+n[i].j);
    }
    printf("Case %d: ", cnt);
    printf("%d\n", ans);

    }
}

沒有留言:

張貼留言