求正整数 n 所有可能的和式的组合(如; 4=1+1+1+1、 1+1+2、 1+3、 2+1+1、2+2)
import java.util.ArrayList;
import java.util.List;
public class PrintSubArr {
static List<Integer> tmp = new ArrayList<Integer>();
public static void solution(int n, int start){
if(n<0){
return;
}else if(n==0){
for(int i: tmp){
System.out.print(i+" ");
}
System.out.println("");
}else{
for(int i=start;i<=n;i++){
//System.out.println("--------------"+tmp);
tmp.add(i);
solution(n-i,i);
tmp.remove((Integer)i);
}
}
}
public static void main(String[] args) {
solution(10,1);
}
}
本文介绍了一个Java程序,该程序用于找出给定正整数n的所有可能的加法组合方式。例如,对于数字4,它可以被分解为1+1+1+1、1+1+2、1+3、2+1+1和2+2等不同的组合形式。
478

被折叠的 条评论
为什么被折叠?



