当前位置: 首页 > article >正文

Java练习题2020-4

小明今天收了N个鸡蛋,每个鸡蛋各有重量,现在小明想找M个重量差距最小的鸡蛋摆成一盒出售,输出符合条件的最重一盒鸡蛋的总重量
输入说明:第一行,鸡蛋个数N(N<1000)  每盒个数M(M<N);第二行,N个鸡蛋重量(浮点)
输出说明:符合条件的最重一盒鸡蛋的总重量(保留2位小数)
输入样例: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);
第二行,N个鸡蛋重量(浮点)
输出说明:符合条件的最重一盒鸡蛋的总重量(保留2位小数)
输入样例:8 4
11  9 12 5 10 19 8 6
输出样例:42.00
 */
public class Test4 {

    public static void main(String[] args) {
        // 装鸡蛋重量
        List<Double> list = new ArrayList<>();
        //装每盒鸡蛋 重量
        List<Double> 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));




    }
}

http://www.kler.cn/a/106857.html

相关文章:

  • java的JJWT 0.91在jdk21中报错的解决方法
  • 【Excel】ToRow超级查找函数
  • MySQL(5)【数据类型 —— 字符串类型】
  • Elasticsearch基本概念及使用
  • 软件工程师简历(精选篇)
  • 2024 年 Apifox 和 Postman 对比介绍详细版
  • 第1篇 目标检测概述 —(3)目标检测评价指标
  • 【uniapp+云函数调用】人脸识别,实人认证,适用于app,具体思路解析,已实现
  • 简单的谈谈VPN是什么、类型、使用场景以及工作原理?
  • 【云原生】portainer管理多个独立docker服务器
  • ubuntu 22.04安装百度网盘
  • 如何使用 JMeter 进行 HTTPS 请求测试?
  • 第七章 ObjectScript 一般系统限制
  • ♥ uniapp 环境搭建
  • OpenAirInterface 实践6:如何配置系统
  • 驱动作业10.28
  • 【剑指Offer】41.数据流中的中位数
  • electron汇总
  • 【面试经典150 | 栈】最小栈
  • 音视频常见问题(六):视频黑边或放大
  • [开源]传统实体产业提供进销存管理解决方案,助传统企业降本增效
  • 点云从入门到精通技术详解100篇-基于尺度统一的三维激光点云与高清影像配准(续)
  • 【Linux】虚拟机项目部署与发布
  • Vue3-使用create-vue创建项目
  • 21个新的ChatGPT应用
  • 树莓派基金会近日发布了新版基于 Debian 的树莓派操作系统