华为OD真题--新学习选址--带答案

2023华为OD统一考试(A+B卷)题库清单-带答案(持续更新)or2023年华为OD真题机考题库大全-带答案(持续更新)

为了解新学期学生暴涨的问题,小乐村要建立所新学校

考虑到学生上学安全问题,需要所有学生家到学校的距离最短.

假设学校和所有学生家都走在一条直线之上,请问学校建立在什么位置,

能使得到学校到各个学生家的距离和最短

输入描述:

第一行:整数n取值范围[1,1000],表示有n户家庭。

第二行:一组整数m取值范围[0,10000],表示每户家庭的位置,所有家庭的位置都不相同。

输出描述:

一个整数,确定的学校的位置,如果有多个位置,则输出最小的。

示例一

输入

5

0 20 40 10 30

输出

20

public class SchoolAddress {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        List address = Arrays.stream(sc.nextLine().split(" "))
                .map(Integer::parseInt).collect(Collectors.toList());
        int endAdress = minAdress(address);
        System.out.println(endAdress);

    }

    public static int minAdress(List address){
        Collections.sort(address);
        //判断奇偶性
        Boolean x = address.size() % 2 == 0 ? true:false;
        int min;
        if (x){
            min = address.get(address.size()/2 - 1);
        }else {
            min = address.get(address.size()/2);
        }
        return min;
    }
}

你可能感兴趣的:(华为OD最新机试真题训练题,算法,华为od,学习,java)