• Java练习题2020-4


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

    1. package _2020Ti;
    2. import java.util.ArrayList;
    3. import java.util.Collections;
    4. import java.util.List;
    5. import java.util.Scanner;
    6. /*
    7. 小明今天收了N个鸡蛋,每个鸡蛋各有重量,
    8. 现在小明想找M个重量差距最小的鸡蛋摆成一盒出售,
    9. 输出符合条件的最重一盒鸡蛋的总重量
    10. 输入说明:第一行,鸡蛋个数N(N<1000) 每盒个数M(M
    11. 第二行,N个鸡蛋重量(浮点)
    12. 输出说明:符合条件的最重一盒鸡蛋的总重量(保留2位小数)
    13. 输入样例:8 4
    14. 11 9 12 5 10 19 8 6
    15. 输出样例:42.00
    16. */
    17. public class Test4 {
    18. public static void main(String[] args) {
    19. // 装鸡蛋重量
    20. List list = new ArrayList<>();
    21. //装每盒鸡蛋 重量
    22. List list2 = new ArrayList<>();
    23. Scanner scanner = new Scanner(System.in);
    24. String line = scanner.nextLine();
    25. String[] s1 = line.split(" ");
    26. String line2 = scanner.nextLine();
    27. String[] s2 = line2.split(" ");
    28. // 鸡蛋加入了集合并排序
    29. for (int i = 0; i < s2.length; i++) {
    30. list.add(Double.parseDouble(s2[i]));
    31. }
    32. Collections.sort(list);
    33. //想了很久怎样能达到的公平 hhh 结果发现没有
    34. //那我就排序 拿一大一小 hhh 感觉能达到所谓的公平
    35. //获取每盒放几个
    36. //鸡蛋重量
    37. Double egeWeight =0.00;
    38. int num=Integer.parseInt(s1[1]); // 4
    39. // 为 一个标志 每次从头或者尾部拿几个
    40. int flag = num /2;
    41. // 循环几次
    42. int ci =Integer.parseInt(s1[0]) / Integer.parseInt(s1[1]);
    43. //开始
    44. int begin = 0;
    45. while (begin < ci){
    46. int touCi = 0;
    47. while (touCi < ci){
    48. egeWeight += list.get(0);
    49. list.remove(0);
    50. touCi++;
    51. }
    52. int weiCi = 0;
    53. while(weiCi < ci){
    54. egeWeight += list.get(list.size() -1);
    55. list.remove(list.size() -1);
    56. weiCi++;
    57. }
    58. begin++;
    59. list2.add(egeWeight);
    60. egeWeight =0.0;
    61. }
    62. Collections.sort(list2);
    63. System.out.println(list2.get(list2.size()-1));
    64. // //就差放鸡蛋步骤了
    65. // //获取每盒放几个
    66. //
    67. // int num=Integer.parseInt(s1[1]);
    68. // //鸡蛋个数
    69. //
    70. // int egeNum = Integer.parseInt(s1[0]);
    71. //
    72. // //鸡蛋重量
    73. //
    74. // double egeWeight = 0;
    75. // // 控制循环次数
    76. // int flag = 0;
    77. // for (int i = 0; i < list.size(); i++) {
    78. //
    79. //
    80. // egeWeight += list.get(i);
    81. // flag ++;
    82. // if (flag == num){
    83. // list2.add(egeWeight);
    84. // egeWeight =0;
    85. // flag =0;
    86. // }
    87. // }
    88. //
    89. // Collections.sort(list2);
    90. // System.out.println(list2.get(list2.size() -1));
    91. }
    92. }
  • 相关阅读:
    【神经网络】【VggNet】
    SSM健康小程序
    Maven
    大数据技术基础实验二:Linux基础——常用基本命令与文件操作
    使用Java 17中的record替代Lombok的部分功能
    安卓APP源码和设计报告——好再来点餐
    由于数字化转型对集成和扩展性的要求,定制化需求难以满足,百数低代码服务商该如何破局?
    大数据培训之phoenix的索引分类
    TEE威胁评分与评级
    文件的物理结构
  • 原文地址:https://blog.csdn.net/weixin_54101103/article/details/134085788