输出所有和为S的连续正数序列
程序员文章站
2022-07-15 12:25:16
...
题目:输出所有和为S的连续正数序列。序列内按照从小至大的顺序,序列间按照开始数字从小到大的顺序。
package test05;
import java.util.ArrayList;
public class test01 {
public ArrayList<ArrayList<Integer>> FindContinuousSequence(int sum) {
ArrayList<ArrayList<Integer>> allList = new ArrayList<>();// 就是第一次从1开始,第二次从2开始,......最后一次从sum/2开始
for (int i = 1; i <= sum / 2; i++) {
int temp = 0;
ArrayList<Integer> list = new ArrayList<>();
for (int j = i; j <= sum - temp; j++) {
temp = temp + j;
list.add(j);
if (temp == sum) {
allList.add(list);
break;
} else if (temp > sum) {
break;
}
}
}
return allList;
}
}