为了账号安全,请及时绑定邮箱和手机立即绑定

硬币找零问题

有面值1,3,4的三种硬币,求找零6所需的最小硬币数目?(动态规划--C语言实现)

 #include <stdio.h>

int min(int a,int b){
    return a>b?b:a;
}

int main(void) {
    int c[]={0,1,3,4};
    int a[7]={0};
    int n=6;
    int i,j;
    int temp;
    for(i=1;i<=6;i++){
        j=1;
        temp=9999;
        while(i>=c[j]&&j<=3){
            temp=min(temp,a[i-c[j]]);
            printf("%d--------%d\n",j,a[i-c[j]]);
            j++;
        }
        temp=temp+1;
        a[i]=temp;
        printf("a[%d]=%d\n",i,temp);
    }
    printf("最小硬币数为:%d",a[6]);
}


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
算法工程师
手记
粉丝
19
获赞与收藏
4

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消