小明今天收了N个鸡蛋,每个鸡蛋各有重量,现在小明想找M个重量差距最小的鸡蛋摆成一盒出售,输出符合条件的最重一盒鸡蛋的总重量
输入说明:第一行,鸡蛋个数N(N<1000) 每盒个数M(M
输入样例:8 4
11 9 12 5 10 19 8 6
输出样例:42.00

- package _2020Ti;
-
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- import java.util.Scanner;
-
- /*
- 小明今天收了N个鸡蛋,每个鸡蛋各有重量,
- 现在小明想找M个重量差距最小的鸡蛋摆成一盒出售,
- 输出符合条件的最重一盒鸡蛋的总重量
- 输入说明:第一行,鸡蛋个数N(N<1000) 每盒个数M(M
- 第二行,N个鸡蛋重量(浮点)
- 输出说明:符合条件的最重一盒鸡蛋的总重量(保留2位小数)
- 输入样例:8 4
- 11 9 12 5 10 19 8 6
- 输出样例:42.00
- */
- public class Test4 {
-
- public static void main(String[] args) {
- // 装鸡蛋重量
- List
list = new ArrayList<>(); - //装每盒鸡蛋 重量
- List
list2 = new ArrayList<>(); - Scanner scanner = new Scanner(System.in);
- String line = scanner.nextLine();
- String[] s1 = line.split(" ");
-
- String line2 = scanner.nextLine();
- String[] s2 = line2.split(" ");
-
- // 鸡蛋加入了集合并排序
- for (int i = 0; i < s2.length; i++) {
- list.add(Double.parseDouble(s2[i]));
-
- }
- Collections.sort(list);
-
-
- //想了很久怎样能达到的公平 hhh 结果发现没有
- //那我就排序 拿一大一小 hhh 感觉能达到所谓的公平
- //获取每盒放几个
- //鸡蛋重量
- Double egeWeight =0.00;
- int num=Integer.parseInt(s1[1]); // 4
- // 为 一个标志 每次从头或者尾部拿几个
- int flag = num /2;
- // 循环几次
- int ci =Integer.parseInt(s1[0]) / Integer.parseInt(s1[1]);
- //开始
- int begin = 0;
- while (begin < ci){
- int touCi = 0;
- while (touCi < ci){
- egeWeight += list.get(0);
- list.remove(0);
- touCi++;
- }
- int weiCi = 0;
- while(weiCi < ci){
- egeWeight += list.get(list.size() -1);
- list.remove(list.size() -1);
- weiCi++;
- }
- begin++;
- list2.add(egeWeight);
- egeWeight =0.0;
- }
- Collections.sort(list2);
- System.out.println(list2.get(list2.size()-1));
-
-
-
-
-
-
-
-
-
-
- // //就差放鸡蛋步骤了
- // //获取每盒放几个
- //
- // int num=Integer.parseInt(s1[1]);
- // //鸡蛋个数
- //
- // int egeNum = Integer.parseInt(s1[0]);
- //
- // //鸡蛋重量
- //
- // double egeWeight = 0;
- // // 控制循环次数
- // int flag = 0;
- // for (int i = 0; i < list.size(); i++) {
- //
- //
- // egeWeight += list.get(i);
- // flag ++;
- // if (flag == num){
- // list2.add(egeWeight);
- // egeWeight =0;
- // flag =0;
- // }
- // }
- //
- // Collections.sort(list2);
- // System.out.println(list2.get(list2.size() -1));
-
-
-
-
- }
- }