- 当苹果数 < 盘子数,有空盘,则忽略一个盘子,在n-1个放苹果,一直递推到n==1,有一种摆法
- 苹果数 >= 盘子数,可以看作没有空盘。则可以选择忽略一个盘子,如上边做法。还可以选择每个盘子放一个苹果,即苹果数剩下i-j,继续递推直到j==1
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
int m = sc.nextInt();
int n = sc.nextInt();
System.out.println(count(m,n));
}
public static int count(int m,int n){
if(m <0 || n < 1) return 0;
if(m == 0 || n == 1) return 1;
// 苹果多的情况 + 盘子多的情况
return count(m-n,n)+count(m,n-1);
}
}