gpt4 book ai didi

最小变化量的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:33:03 26 4
gpt4 key购买 nike

是的,我知道有与此类似的帖子,但是在浏览了所有这些帖子后,我仍然被困住了,因为我对编程还很陌生,而且给出的答案都不够具体,无法帮助我解决问题。


问题。编写一个高效的 ACL(算法计算机语言)算法,给定一件商品的成本(小于或等于一美元),给出买家愿意购买的 50 美分、20 美分、10 美分、5 美分和 1 美分硬币的数量如果他们交出一美元,就会收到。您必须尽量减少零钱中的硬币数量。


题目与任何特定的编程语言无关,答案只能使用if、if-else、while循环等简单的ACL语言,不能使用数组或其他高级命令。

这里是我所在的地方:

在此处输入代码算法最小更改量

{
int cost, fifty, twenty, ten, five, one;

fifty = 0;
twenty = 0;
ten = 0;
five = 0;
one = 0;

read (cost);
if (cost <= 50)
{
fifty = 1;

完成代码,感谢您的帮助!如果您发现任何歧义或可以帮助我简化代码,请告诉我。


Algorithm how much change
{
int cost, change, fifty, twenty, ten, five, one;

fifty = 0;
twenty = 0;
ten = 0;
five = 0;
one = 0;

read (cost);
change = 100 - cost;

if (change >= 50)
{
fifty = fifty + 1;
change = change - 50;
}
while (change >= 20)
{
twenty = twenty + 1;
change = change - 20;
}
while (change >= 10)
{
ten = ten + 1;
change = change - 10;
}
while (change >= 5)
{
five = five + 1;
change = change - 5;
}
while (change >= 1)
{
one = one + 1;
change = change - 1;
}

print(one, five, ten, twenty, fifty);
}

最佳答案

实际上,cost >= 50 只需要检查一次,但这更通用(对于超过 1 美元的情况)

while (cost >= 50)
{
fifty++;
cost -= 50;
}
while (cost >= 20)
{
twenty++;
cost -=20;
}
...

关于最小变化量的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5229684/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com