一直超时,但是程序没有任何问题,我在论坛上看到所有用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 ****************************************************************/
原文:http://www.cnblogs.com/qq1029579233/p/4793829.html