public class 将一个数拆分 {
- //*******************************************
- static void f(int n,int[] a,int k) {
- String s="";
- if(n<=0) {
- for(int i=0;i<k;i++)
- s=s+a[i]+"+";
- System.out.println(s.substring(0, s.length()-1));
- return;
- }
- for(int i=n;i>0;i--) {
- if(k>0&&i>a[k-1])continue;
- a[k]=i;
- f(n-i,a,k+1);
- }
- }
- public static void main(String[] args) {
- int[] a=new int[100];
- f(6,a,0);
- }
- }
来源: http://www.bubuko.com/infodetail-3447196.html