Start: Mar, 06, 2018 09:46:00
计算机161 算法分析与设计 第一次实验课作业(吴银杰、张凯庆)
End: Mar, 10, 2018 10:00:00
Time elapsed:
Time remaining:

Problem_ID: F
Result: Accepted
Time: 17ms
Memory: 1092kB
Author: 2016210401008
In contest: 1141

#include<stdio.h>
#include<string.h>
struct student{
	char name[30];
	int score;
};
int main(void){
    int n;
    scanf("%d",&n);
    while(n--){
    	int num,score1,score2;
    	scanf("%d\n",&num);
    	struct student stu[num];
    	for(int i = 0;i < num;i++){
    		scanf("%s",stu[i].name);  			
    		scanf("%d%d",&score1,&score2);	
    		getchar();
    		stu[i].score = score1+score2;
		}
    	
		int max = stu[0].score;
		for(int i = 0;i < num;i++){
			for(int j = i;j < num;j++){
				if(stu[j].score > stu[i].score){
					max = stu[j].score;					
					stu[j].score = stu[i].score;
					stu[i].score = max;
					char temp[30];
					strcpy(temp,stu[j].name);
					strcpy(stu[j].name,stu[i].name);
					strcpy(stu[i].name,temp);
					
				}
			}
		}
		for(int i = 0;i < num;i++){
			printf("%s\n",stu[i].name);
		}
	}
    return 0;
}