您的位置:首页 > 产品设计 > UI/UE

1062. Talent and Virtue (25)

2015-01-10 16:39 239 查看
#include <iostream>
#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;

int L, H;

struct man {
int id;
int vg;
int tg;

bool operator<(const man &b) const {
if((vg+tg)^(b.vg+b.tg))
return vg+tg > b.vg+b.tg;
if(vg^b.vg)
return vg > b.vg;
return id < b.id;
}
};

int main(int argc, char **argv) {
int n;
cin >> n >> L >> H;

vector<man> human[4];
for(int i = 0; i < n; i ++) {
man m;
scanf("%d%d%d", &m.id, &m.vg, &m.tg);
if(m.vg >= H && m.tg >= H) {
human[0].push_back(m);
}
else if(m.vg >= H && m.tg >= L) {
human[1].push_back(m);
}
else if(m.vg >= L && m.tg >= L) {
if(m.vg >= m.tg) {
human[2].push_back(m);
}
else
human[3].push_back(m);
}
}

int total = 0;
for(int i = 0; i < 4; i ++) {
sort(human[i].begin(), human[i].end());
total += human[i].size();
}

cout << total << endl;
for(int i = 0; i < 4; i ++) {
for(int j = 0; j < human[i].size(); j ++) {
printf("%05d %d %d\n", human[i][j].id, human[i][j].vg, human[i][j].tg);
}
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: