日期:2014-05-20 浏览次数:20689 次
final int num=20; int[] stack=new int[6]; for(int x=1,pos=0,sum=0;x<num;x++){ stack[pos++]=x; sum+=x; if(sum<num){ continue; } if(sum==num){ for(int i=0;i<pos;i++){ System.out.print(stack[i]+"+"); } System.out.println(); } sum-=stack[--pos]; sum-=stack[--pos]; x=stack[pos]; }