有面值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 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦