标签:时间 ons 函数 bottom 数据 discover nis sample const
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
那么小于零的就不用管了。
由于最小的才是零,小于零临时无论我们的是
好,这个两个任务
res12<=resii(当中i表示1到2的随意值不反复随意组合):12,21
然后是三个任务:
res123<=resiii(当中i表示1到3的随意值不反复随意组合):321,312,123,132,213,231
对于四个任务
res1234<=resiiii(当中i表示1到4的随意值不反复随意组合),......
。。。。。。
。
。
如此可以判断出。将限制最前的时间先做完才可以将最大惩处数变为最小。
当然还有最简单的想法。不须要如此思考,却一样可以做出来。就是。假设你限制时间小的。因为时间问题。你越不早处理。
你的惩处数就有可能越大。如此,我们应该最先处理最早的,于是依照这个思路,也能够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; }
标签:时间 ons 函数 bottom 数据 discover nis sample const
原文地址:http://www.cnblogs.com/ljbguanli/p/6918888.html