题解 | #放苹果#

放苹果

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

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String input = br.readLine();
        int apple = Integer.parseInt(input.split(" ")[0]);
        int plate = Integer.parseInt(input.split(" ")[1]);
        System.out.println(getCount(apple, plate));
    }
    public static int getCount(int apple, int plate){
        // 递归出口:
        // 没苹果放了,之后所有的盘子都空着,这种情况也是一种放法,且只能这么放;
        // 或者盘子只有一个了,但是苹果不为0,只能将所有苹果放在这个盘子里
        if(apple == 0 || plate == 1){
            return 1;
        }
        // 若盘子数量大于苹果数量,则忽略多余的盘子,因为盘子是无差别的
        if(plate > apple){
            return getCount(apple, apple);
        } else {
            // 若盘子数小于等于苹果数,此时可以分为两各种情况
            // 1. 盘子不放满,将一些盘子空着,则从空一个盘子开始放
            // 2. 盘子放满,则先将每个盘子放一个苹果,再放剩下的苹果
            return getCount(apple, plate - 1) + getCount(apple - plate, plate);
        }
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
06-12 16:50
已编辑
小米_软件开发(准入职员工)
晓沐咕咕咕:评论区没被女朋友好好对待过的计小将可真多。觉得可惜可以理解,毕竟一线大厂sp。但是骂楼主糊涂的大可不必,说什么会被社会毒打更是丢人。女朋友体制内生活有保障,读研女朋友还供着,都准备订婚了人家两情相悦,二线本地以后两口子日子美滋滋,哪轮到你一个一线城市房子都买不起的996清高计小将在这说人家傻😅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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