public class Solution {
public ArrayList<ArrayList<Integer> > FindContinuousSequence(int sum) {
ArrayList<ArrayList<Integer>> result = new ArrayList<>();
for (int i = 1;i<sum;i++) {
int tmp = 0;
int j = i;
while (tmp<sum) {
tmp+=j;
j++;
}
if (tmp == sum) {
ArrayList<Integer> list = new ArrayList<>();
for (int k = i;k<j;k++) {
list.add(k);
}
result.add(list);
}
}
return result;
}
}
此处用穷举的方法,从1 开始,只要小于目标和,就让他一直加,最后判断如果等于目标值,就是符合的结果,将它加入结果集,否则进行下一次循环判断。