硬币组合问题

问题描述:
有1分,2分,5分,10分四种硬币,每种硬币数量无限,给定n分钱(n <= 100000),有多少中组合可以组成n分钱?

蛮力发解决(穷举)

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        int n1=0,n2=0,n5=0,n10=0 ;
        int sumary=0;
        for(n1=0;n1<num+1;n1++){
            for(n2=0;n2<(num+1)/2;n2++){
                for(n5=0;n5<(num+1)/5;n5++){
                    for(n10=0;n10<(num+1)/10;n10++){
                        if(n1+2*n2+5*n5+10*n10==num){
                            sumary++;
                        }

                    }
                }
            }
        }
        System.out.println(sumary);
        sc.close();
    }
}

动态规划太头疼了,代码实现太复杂。

全部评论

相关推荐

king122:专业技能不要写这么多,熟悉和熟练你经不住问,排版有些难看,中间的空隙搞小一点,项目描述的话感觉是从课程中抄下来的,改一改吧,不然烂大街了,每个项目都写一两点,用什么技术实现了什么难点,然后再写一些数字上去像时间又花了90%这样,这样面试会多一些,如果觉得自己的项目还是不够用的话,我有几个大厂最近做过的实习项目,感兴趣的话可以看我简介中的项目地址
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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