题解 | #放苹果#

放苹果

https://www.nowcoder.com/practice/bfd8234bb5e84be0b493656e390bdebf

import java.util.*;
//把m个同样的苹果放在n个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) { // 注意 while 处理多个 case
            int apple = in.nextInt();
            int p = in.nextInt();
            System.out.println(v(apple, p));
        }
    }

    public static int v(int apple, int p) {
        if (p <= 0 || apple < 0) return 0;
        if (p == 1 || apple == 0 || apple == 1) return 1;

        return v(apple, p - 1) + v(apple - p, p);
    }
}

全部评论

相关推荐

11-13 14:37
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务