wordpress管理员与编辑可见,厦门关键词优化服务,丽水市网站建设,九九建筑网我的思路#xff1a;1、先排序2、两层循环嵌套#xff0c;外面的一层从数组末尾开始#xff0c;里面一层从头开始遍历#xff0c;首先满足的条件就是这两个数都不能是 NULL 的#xff0c;并且两个物品的价值加起来不大于最大价值#xff0c;都满足之后就把两个物品都赋值…我的思路1、先排序2、两层循环嵌套外面的一层从数组末尾开始里面一层从头开始遍历首先满足的条件就是这两个数都不能是 NULL 的并且两个物品的价值加起来不大于最大价值都满足之后就把两个物品都赋值为 NULL 表示能放入同一个组sum 1 计数并跳出循环因为都为空了表示里面循环没必要继续进行下去;3、当里面的循环遍历完成以后需要进行判断因为有可能当里面的循环遍历之后没有能和它匹配的那么就只能把当前分一个组赋值为 NULL 并 sum1。#####算是比较简洁的过程思路也比较简单public class Test {public static void main(String[] args) {Scanner sc new Scanner(System.in);int max sc.nextInt();int num sc.nextInt();//创建数组保存值Integer[] arr new Integer[num];for (int i 0; i num; i) {arr[i] sc.nextInt();}//排序Arrays.sort(arr);int sum 0;//外层循环for (int i arr.length - 1; i 0; i--) {//内层循环for (int j 0; j arr.length; j) {//两个值都不为空并且两个值加起来不大于最大值if (arr[j] ! null arr[i] ! null arr[i] arr[j] max) {arr[i] null;arr[j] null;sum;break;}}//如果没有匹配的值就单独分一组if(arr[i] ! null) {arr[i] null;sum;}}System.out.println(sum);}}0.0分1 人评分