#include<stdio.h>
typedef struct{
int n, l, w;
}D;
int compare(D d1, D d2){
if (d1.n > d2.n){
return 1;
}
else if (d1.n == d2.n){
if (d1.l > d2.l){
return 1;
}
else if (d1.l == d2.l){
if (d1.w > d2.w){
return 1;
}
else if (d1.w == d2.w){
return 0;
}
}
}
return -1;
}
int main(){
freopen("input.txt", "r", stdin);
int n;
scanf("%d", &n);
while (n--){
int m;
scanf("%d", &m);
D d[1001];
D temp;
int tl, tw;
for (int i = 0; i < m; i++){
scanf("%d%d%d", &d[i].n, &tl, &tw);
d[i].l = tl > tw ? tl : tw;
d[i].w = tl > tw ? tw : tl;
}
for (int i = 0; i < m - 1; i++){
int k = i;
for (int j = i + 1; j < m; j++){
if (compare(d[k],d[j])==1){
k = j;
}
else if (compare(d[k], d[j]) == 0){
for (int l = j; l < m - 1; l++){
d[l] = d[l + 1];
}
m--;
}
}
if (k != i){
temp = d[k];
d[k] = d[i];
d[i] = temp;
}
}
for (int i = 0; i < m; i++){
printf("%d %d %d\n", d[i].n, d[i].l, d[i].w);
}
}
}
ACM (8) 一种排序
最新推荐文章于 2017-11-25 18:13:57 发布