标签:
Description
Input
Output
Sample Input
2 2 3 4 2 2 4 3 6 2 7 4 5 3 9
Sample Output
Case 1: 1 Case 2: 3
你的惩罚数就有可能越大,如此,我们应该最先处理最早的,于是按照这个思路,也可以AC这道题目。
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
typedef long long LL;
const int maxn=100000+5;
int T,n,k;
struct dai {
    int ci,di;
    bool operator<(const dai&a) const {
        return di<a.di;
    }
} daes[maxn];
int main() {
    scanf("%d",&T);
    while(T--) {
        scanf("%d",&n);
        for(int i=0; i<n; i++) {
            scanf("%d%d",&daes[i].ci,&daes[i].di);
        }
        sort(daes,daes+n),k=1;
        long long res=0,cur=0;
        for(int i=0; i<n; i++) {
            cur+=daes[i].ci;
            res=max(res,cur-daes[i].di);
        }
        printf("Case %d: %lld\n",k++,res);
    }
    return 0;
}
标签:
原文地址:http://blog.csdn.net/qq_18661257/article/details/46456703