西北工业大学 校赛 随机序列 题解

题目

在这里插入图片描述

思路

数据量不大,直接用类存储每一个卷子。直接算就是了。这道题的问题在于很多人没法控制格式化输出。其实很简单,他题目没说,但可以观察出是四舍五入到小数后第三位,直接System.out.println("%.3f",%float) 就完事
import java.util.*;
public class 测试{
    public static class paper{
        int  number;
        int []list;
        public paper(int number){
            this.number=number;this.list=new int[number];
        }
        
    }
    public static void main(String args[]){
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        paper [] paperList=new paper[n];
        for(int i =0;i<n;i++) {
        	int number=sc.nextInt();
        	paperList[i]=new paper(number);
        	for(int j =0;j<number;j++) {
        		paperList[i].list[j]=sc.nextInt();
        	}
        }
        for(int i =0;i<n;i++){
            getJiCha(paperList[i]);
        }
    }
    public static void getJiCha(paper p){
        Arrays.sort(p.list);
        System.out.print((p.list[p.list.length-1]-p.list[0])+" " );
        getFangcha(p);
    }
    public static void getFangcha(paper p){
        double  av=0;
        for(int i = 0;i<p.list.length;i++){
            av+=p.list[i];
        }
        av/=p.list.length;
        double sum=0;
        for(int i=0;i<p.list.length;i++){
           double tmp=  Math.pow(p.list[i]-av,2);
           sum+=tmp;
        }
        sum/=p.list.length;
        System.out.printf("%.3f\n",sum);
    }
    
}

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值