1.题目

2.解法( 穷举法)
import java.util.ArrayList;
public class Solution {
public ArrayList<ArrayList<Integer> > FindContinuousSequence(int sum) {
ArrayList<ArrayList<Integer>> list = new ArrayList<>();
if(sum < 3){
return list;
}
int min = 1;
int max = 2;
int middle = (sum + 1) / 2;
int add = min + max;
while(min < middle){
if(add == sum){
list.add(printContinuousSeq(min, max));
}
while(add < sum && min < middle){
++max;
add += max;
if(add == sum){
list.add(printContinuousSeq(min, max));
}
}
add -= min;
++min;
}
return list;
}
public ArrayList<Integer> printContinuousSeq(int min, int max){
ArrayList<Integer> seqList = new ArrayList<>();
for(int i = min; i <= max; i++){
seqList.add(i);
}
return seqList;
}
}