现在的位置: 首页 > 综合 > 正文

福州网赛 1010 War (贪心)

2012年12月26日 ⁄ 综合 ⁄ 共 567字 ⁄ 字号 评论关闭

  表示cin很不靠谱,10^5的数据量都能TLE 改成scanf 300+ms。

My Code:

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <fstream>

using namespace std;

const int N = 100005;

class phage{
public:
int di;
int ti;
}p[N];

bool cmp(phage a, phage b){
if(a.ti != b.ti) return a.ti > b.ti;
else return a.di > b.di;
}

int main(){
#ifdef ONLINE_JUDGE
#else
freopen("data.in", "r", stdin);
#endif

int T, n, i, sum, tmp, ca = 0;
cin >> T;
while(T--){
cin >> n;
for(i = 0; i < n; i++){
scanf("%d%d", &p[i].di, &p[i].ti);
}
sort(p, p + n, cmp);
sum = 0; tmp = 0;
for(i = 0; i < n; i++){
tmp += p[i].di;
if(tmp + p[i].ti > sum){
sum = tmp + p[i].ti;
}
}
cout << "Case " << ++ca << ": " << sum << endl;
}
return 0;
}

抱歉!评论已关闭.