一位小朋友不当心把下图钟表摔到地上,让完整的表盘碎成了3块。小朋友却发现,每一起碎片上的数字之和都是同样的。那么,你知道每一起碎片上的数字分别都是什么吗?java
逻辑:分红3块,目标:找到知足条件且可以连起来的块code
package testaa; import java.util.ArrayList; public class MyTest { public static void main(String[] args) { int[] arr= {1,2,3,4,5,6,7,8,9,10,11,12}; int num=0; for(int i=0;i<arr.length;i++) { num+=arr[i]; } System.out.println("总和为:"+num); int ac=num/3; System.out.println("平均值为:"+ac); //存储最终结果集合 ArrayList arr1 = new ArrayList<>(); //存储+过程集合 ArrayList arr2 = null; // int num1=0; System.out.println("=====循环开始====="); for(int i=0;i<arr.length;i++) { arr2=new ArrayList<>(); arr2.add(arr[i%12]); num1=arr[i]; for(int j=(i+1)%12;j<arr.length;j=(j+1)%12) { if(num1==ac) { arr1.add("start="+arr[i%12]); arr1.add("end="+arr[j-1]); System.out.println(arr2.toString()); break; }else if(num1<26){ num1+=arr[j]; }else { break; } arr2.add(arr[j]); } } System.out.println("=====循环结束====="); System.out.println(arr1.toString()); } }