import java.util.Scanner; public class 数的划分 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); int num=sc.nextInt(); int sum=0; int[][] dp=new int[num+1][num+1]; for (int i = 1; i <= num; i++) { for (int j = 1; j <= i; j++) { if (i==1||j==1) { dp[i][j]=1; } else { //数不能相同 所以i-j 避免数字相同 dp[i][j]=dp[i-j][j]+dp[i-1][j-1]; } sum+=dp[num][j]; } } System.out.println(sum); } }
解题思路:
注意事项:
参考代码:
0.0分
0 人评分