牛牛组队
题目描述:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
while(scanner.hasNextInt()){
int n= scanner.nextInt();
int [] a=new int[n*3];
long sum= 0;
for (int i=0;i<n*3;i++){ //循环输入
a[i]=scanner.nextInt();
}
Arrays.sort(a);//先排序
for (int j=0;j<n;j++)
{
sum+=a[a.length-2*(j+1)];//主要是能推导出来这个公式;
}
System.out.println(sum);
}
}
}
关键公式
a,length-2*(j+1)
其实就是从倒数第二个一个位置开始,每次都间隔一个数字取,这样就能保证排序之后取到的每个数字都是第二大的。