题解 | #放苹果#抄大佬代码,动态规划

放苹果

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

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        while(sc.hasNext()){
            int m=sc.nextInt();//苹果
            int n=sc.nextInt();//盘子
            int[][] dp=new int[m+1][n+1];
            //当没有苹果时,只有一种摆法
            for(int j=0;j<=n;j++){
                dp[0][j]=1;
            }
            for(int i=1;i<=m;i++){
                for(int j=1;j<=n;j++){
                    //当苹果数小于盘子数时,忽略一个盘子在n-1个盘子上放置苹果
                    if(i<j){
                          dp[i][j]=dp[i][j-1];
                    }
                    //当苹果数大于盘子数时,可以选择一个盘子忽略,也可以将剩余的苹果放进去
                    else{
                        dp[i][j]=dp[i][j-1]+dp[i-j][j];
                    }
                  
                }
            }
            System.out.println(dp[m][n]);
        }

    }
}
全部评论

相关推荐

我即大橘:耐泡王
点赞 评论 收藏
分享
11-02 09:49
已编辑
货拉拉_测试(实习员工)
热爱生活的仰泳鲈鱼求你们别卷了:没事楼主,有反转查看图片
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务