代码写出来测试数据一直通不过,后来去差了下Array.sort()才发现对于Array.sort(a,1,n)这种排序方式,是对a数组从a[1]到a[n-1]进行升序排序,不包括a[n]。
sort
public static voidsort(int[] a, int fromIndex, int toIndex)对指定 int 型数组的指定范围按数字升序进行排序。排序的范围从索引 fromIndex(包括)一直到索引 toIndex(不包括)。(如果 fromIndex==toIndex,则排序范围为空。)
(摘自百度百科)
开学都两个星期了,不能再这样混下去了。
import java.util.*;
import java.util.Scanner;
class sort {
int[] a = new int[15];
public void SetSort(int[] b) {
for (int i = 0; i < 10; i++) {
a[i] = b[i];
}
}
public int Ans(int n) {
Arrays.sort(a, 0, n);
return a[7];
}
}
public class Main {
public static void main(String[] args) {
Scanner inScanner = new Scanner(System.in);
int T;
T = inScanner.nextInt();
for (int i = 0; i < T; i++) {
int[] b = new int[15];
int n;
n = inScanner.nextInt();
for (int j = 0; j < 10; j++)
b[j] = inScanner.nextInt();
sort A = new sort();
A.SetSort(b);
System.out.println(n + " " + A.Ans(10));
}
}
}