Start: Jan, 08, 2018 19:10:00
2017年秋季学期程序设计基础(C语言)期末考试
End: Jan, 08, 2018 21:40:00
Time elapsed:
Time remaining:

Problem_ID: E
Result: Accepted
Time: 12ms
Memory: 1092kB
In contest: 1139

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//int cmp(const void *p,const void *q){return (*(int *)q-*(int *)p);}

struct st{
	char n[32];
	int sum;
};
int main(void){
	int t;
	scanf("%d",&t);
	while(t--){
		int n,i,j,a,b;
		struct st s[120];
		scanf("%d",&n);
		for(i=0;i<n;i++){
			scanf("%s %d %d",&s[i].n,&a,&b);
			s[i].sum=a+b;
		}
		
		for(i=0;i<n;i++){
			int t=i;
			for(j=i;j<n;j++){
				if(s[t].sum<s[j].sum)
					t=j;
			}
			if(t!=i){
				//int len1=strlen(s[i].n),len2=strlen(s[t].n);
				strcpy(s[115].n,s[i].n);//len1
				strcpy(s[i].n,s[t].n);//len2
				strcpy(s[t].n,s[115].n);//len1
				int x=s[i].sum;
				s[i].sum=s[t].sum;
				s[t].sum=x;
			}
		}
		for(i=0;i<n;i++){
			printf("%s\n",s[i].n);
		}
	}
	return 0;
}