//
// main.cpp
// PATA1055
//
// Created by Phoenix on 2018/2/14.
// Copyright © 2018年 Phoenix. All rights reserved.
//
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn = 100010;
struct Node {
char name[10];
int age;
int money;
}node[maxn];
bool cmp(Node a, Node b) {
if(a.money != b.money) return a.money > b.money;
else if(a.age != b.age) return a.age < b.age;
else return strcmp(a.name, b.name) < 0;
}
int main(int argc, const char * argv[]) {
int n, k;
scanf("%d %d", &n, &k);
for(int i = 0; i < n; i++) {
scanf("%s %d %d", node[i].name, &node[i].age, &node[i].money);
}
sort(node, node + n, cmp);
for (int i = 1; i <= k; i++) {
int m, low, high, num = 0;
scanf("%d %d %d", &m, &low, &high);
printf("Case #%d:\n", i);
for(int j = 0; j < n; j++) {
if(num < m && node[j].age >= low && node[j].age <= high) {
printf("%s %d %d\n", node[j].name, node[j].age, node[j].money);
num++;
}
if(num == m) break;
}
if(num == 0) printf("None\n");
}
return 0;
}
PATA1055题解
最新推荐文章于 2020-11-24 20:11:17 发布