51.和为n 连续正数序列。
题目:输入一个正数n,输出所有和为n 连续正数序列。
题目:输入一个正数n,输出所有和为n 连续正数序列。
例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3 个连续序列1-5、4-6 和7-8。
代码如下:
public static void findSeqSum(int sum)
{
int begin=1,end=2,mid=sum/2,curSum=begin+end;
while(begin<mid)
{
if(curSum==sum)
{
for(int i=begin;i<=end;i++)
System.out.println(i);
System.out.println("\n");
}
while(curSum>sum&&begin<mid)
{
curSum-=begin;
begin++;
if(curSum==sum)
{
for(int i=begin;i<=end;i++)
System.out.println(i);
System.out.println("\n");
}
}
end++;
curSum+=end;
}
}