题目2 成绩排序

一直超时,但是程序没有任何问题,我在论坛上看到所有用Java写的这道题目都超时了,所以应该是评判系统的问题。

 1 import java.util.Arrays;
 2 import java.util.Scanner;
 3  
 4 public class Main{
 5     static class stu implements Comparable<stu>{
 6         String name;
 7         int age;
 8         int score;
 9         @Override
10         public int compareTo(stu an) {
11             if(score>an.score) return 1;
12             else if(score<an.score) return -1;
13             else if(name.compareTo(an.name)!=0) return name.compareTo(an.name);
14             else if(age>an.age) return 1;
15             else if(age<an.age) return -1;
16             else return 0;
17         }
18         @Override
19         public String toString() {
20             return name+" "+age+" "+score;
21         }
22     }
23     public static void main(String[]args){
24         Scanner in=new Scanner(System.in);
25         int n=0;
26         stu[]nums=null;
27         while(in.hasNext()){
28             n=in.nextInt();
29             nums=new stu[n];
30             for(int i=0;i<n;i++){
31                 nums[i]=new stu();
32                 nums[i].name=in.next();
33                 nums[i].age=in.nextInt();
34                 nums[i].score=in.nextInt();
35             }
36             Arrays.sort(nums);
37             for(stu x:nums)
38                 System.out.println(x);
39         }
40     }
41 }
42 /**************************************************************
43     Problem: 1061
44     User: 0000H
45     Language: Java
46     Result: Time Limit Exceed
47 ****************************************************************/
原文地址:https://www.cnblogs.com/qq1029579233/p/4793829.html