题解 | #放苹果#

放苹果

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

import java.util.Scanner;

/**
 * 比较直接的解法,由于5,1,1和1,5,1为同一种,那么我们对于每一种放法,
 * 我们可以让前一个盘子放的苹果数不少于后面的苹果数,保证放法唯一。
 */
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            int n = sc.nextInt(), m = sc.nextInt();
            System.out.println(dfs(m, n, n));
        }
    }

    /**
     * @param m   盘子数
     * @param n   苹果数
     * @param pre 前一个盘子放的苹果数
     * @return
     */
    private static int dfs(int m, int n, int pre) {
        // 苹果数为0,不需要再放
        if (n == 0) {
            return 1;
        }

        // 没有盘子了,返回0
        if (m == 0) {
            return 0;
        }

        int res = 0;
        // 当前盘子苹果数不能多于前一个盘子的苹果数
        for (int i = pre; i > 0; i--) {
            res += dfs(m - 1, n - i, i);
        }

        return res;
    }
}
全部评论

相关推荐

03-17 23:54
黑龙江大学 Java
来个白菜也好啊qaq:可以的,大厂有的缺打手
点赞 评论 收藏
分享
评论
2
1
分享

创作者周榜

更多
正在热议
更多
# 一张图晒出你司的标语 #
4440次浏览 78人参与
# 找AI工作可以去哪些公司? #
9797次浏览 290人参与
# 米连集团26产品管培生项目 #
13461次浏览 285人参与
# 你的实习产出是真实的还是包装的? #
20642次浏览 345人参与
# 从事AI岗需要掌握哪些技术栈? #
9605次浏览 364人参与
# 春招至今,你的战绩如何? #
67275次浏览 595人参与
# 开放七大实习专项,百度暑期实习值得冲吗 #
15616次浏览 226人参与
# AI面会问哪些问题? #
28823次浏览 609人参与
# 中国电信笔试 #
32210次浏览 295人参与
# 你做过最难的笔试是哪家公司 #
35309次浏览 290人参与
# 金三银四,你的春招进行到哪个阶段了? #
22501次浏览 284人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
341137次浏览 2175人参与
# 如何准备秋招 #
78321次浏览 868人参与
# 同bg的你秋招战况如何? #
212264次浏览 1121人参与
# 哪些公司真双非友好? #
69785次浏览 289人参与
# 应届生被毁约被毁意向了怎么办 #
63343次浏览 305人参与
# 阿里笔试 #
179302次浏览 1321人参与
# 机械人避雷的岗位/公司 #
62720次浏览 393人参与
# 小马智行求职进展汇总 #
25149次浏览 80人参与
# 第一份工作一定要去大厂吗 #
15089次浏览 123人参与
# 担心入职之后被发现很菜怎么办 #
291419次浏览 1210人参与
# 为了减少AI幻觉,你注入过哪些设定? #
26314次浏览 310人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务