题目来源#
题目描述#
小明很喜欢数学有一天他在做数学作业时要求计算出9~16的和他马上就写出了正确答案是100.但是他并不满足于此他在想究竟有多少种连续的正数序列的和为100(至少包括两个数).没多久他就得到另一组连续正数和为100的序列:1819202122.现在把问题交给你你能不能也很快的找出所有和为S的连续正数序列? Good Luck!
输出描述:
解题思路#
所求序列是连续的递增序列,所以需要前后指针包含的是连续的数据.
Big指针在前,当和小于target时继续向前增加数字;small在后,当和大于target时向前减少数字.
边界条件:因为结果数组必须包含两个数字以上,所以small<(s+1)/2,比如target为15,small不能到8,因为big至少为9超过了target.
注:本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可.