题解 | #和为S的连续正数序列#
和为S的连续正数序列
http://www.nowcoder.com/practice/c451a3fd84b64cb19485dad758a55ebe
import java.util.ArrayList;
public class Solution {
public ArrayList<ArrayList<Integer> > FindContinuousSequence(int sum) {
ArrayList <ArrayList<Integer> > resList = new ArrayList <ArrayList<Integer> >();
//题目很简单,就是需要扣边界条件,sum=1时易错
if(sum <= 1){
return resList;
}
for(int i = 1; i < sum / 2 + 1; i++){
int count = 0;
ArrayList<Integer> tmpList = new ArrayList<Integer>();
lable: for(int j = i; j <= sum / 2 + 2; j++){
count += j;
tmpList.add(j);
if(count == sum){
resList.add(tmpList);
break lable;
}
if(count > sum){
break lable;
}
}
}
return resList;
}
}