import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner=new Scanner(System.in); int t=scanner.nextInt(); for (int i = 0; i < t; i++) { int max=0; int min=1000000000; double avg=0; int sum=0; int n=scanner.nextInt(); int a[]=new int[n]; for (int j = 0; j < n; j++) { a[j]=scanner.nextInt(); if(a[j]>max)max=a[j]; if(a[j]<min)min=a[j]; sum+=a[j]; } avg=1.0*sum/n; double d=0; for (int j = 0; j < n; j++) { d+=((a[j]-avg)*(a[j]-avg)); } d=1.0*d/n; System.out.print((max-min)+" "); System.out.printf("%.3f\n",d); } } }
这题不难,主要是被2T行输入误导了,其实还是只有t轮循环,只不过每一轮都有两行输入的内容而已,我被误导后本地ide不报错,也输出了结果,但是牛客上报错,很奇怪的情况,后面发现把循环次数就改即可