1 / 6
文档名称:

找零钱问题的贪心算法.docx

格式:docx   大小:10KB   页数:6页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

找零钱问题的贪心算法.docx

上传人:薄荷牛奶 2022/6/22 文件大小:10 KB

下载得到文件列表

找零钱问题的贪心算法.docx

相关文档

文档介绍

文档介绍:找零钱问题的贪心算法
问题描述:
当前有面值分别为2角5分,1角,5分,1分的硬币,请给出找n分钱的最佳方案(要求 找出的硬币数目最少)
问题分析:
根据常识,我们到店里买东西找钱时,老板总是先给我们最大面值的,要是不够再找面值小
Y=(int)(100*X)+Z;
fbi(a=0;a<6;a-H-)
{
Coins[a]=Comsbackup[a];
}
wliile(Coiiis[m]==0||Y<Com_Face[m])( m-;)
while(Coiiis[m]!=0&&Y>=Coin_Face[m]&&m!=-l)
{Y=Y-Coin_Face[m];
Coms[m]=Coins[m]-l;
n=n-l;
if (Y=O&&n=O) goto loopl;
else if((Y==0&&n!=0)||(Y!=0&&n==0)) (b=b+l;goto loop3;) while(Coiiis[m]==011Y<Com_Face[m]){ m-;if(m<0) break;}
}
} break;
loop4: case 2: m=5;n=ij;
fbi(b;b<ll;b++)
{
Z=back2[b];
Y=(int)(100*X)+Z;
fbi(a=0;a<6;a-H-)
{
Coins[a]=Comsbackup[a];
}
wliile(Coiiis[m]==0||Y<Com_Face[m])( m-;)
while(Coiiis[m]!=0&&Y>=Coin_Face[m]&&m!=-l)
(Y=Y-Com_Face[m];
Coms[m]=Coins[m]-l;
n=n-l;
if (Y=0&&n=0) goto loopl;
else if((Y==0&&n!=0)||(Y!=0&&n==0)) (b=b+l;goto loop4;)
while(Coiiis[m]==011Y<Com_Face[m]){ m-;if(m<0) break;}
} ) break;
loop5: case 3: m=5;n=ij;
fbi(b;b<13;b++)
Z=back3[b];
Y=(int)(100*X)+Z;
fbi(a=0;a<6;a-H-)
{
Coins[a]=Comsbackiip[a];
}
wliile(Coiiis[m]==0||Y<Com_Face[m])( m-;)
while(Coiiis[m]!=0&&Y>=Coin_Face[m]&&m?=-l)
(Y=Y-Com_Face[m];
Coms[m]=Coins[m]-l;
n=n-l;
if (Y=O&&n=O) goto loopl;
else if((Y==0&&n!=0)||(Y!=0&&n==0)) (b=b+l;goto loop5;} while(Coiiis[m]==011Y<Com_Face[m]){ m-;if(m<0) break;}
}
} break;
loop6: case 4: m=5;n=ij;
fbr(b;b<8;b-H-)
{
Z=back4[b];
Y=(int)(100*X)+Z;
fbi(a=0;a<6;a