51.和为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; } }
时间: 2024-12-21 03:26:25