我对Python还比较陌生,我被一个特别的问题困住了,我想我应该问问你们。你知道吗
以下是我迄今为止的代码,以及其中存在的问题:
list=[100,20,30,40 etc...]
只是一个用不同数值表示物体重量的列表。你知道吗
object=0
while len(list)>0:
list_caluclation=list.pop(0)
print(object number:",(object),"evaluates to")
我接下来要做的是评估列表中的项目。所以如果我们使用索引[0],我们的列表值是100。然后我想把它分成更小的部分,比如,对于一个100克的物体,我们可以把它分成5个20克的单位。如果被拆分的值是35,那么它将是一个20克单位,10克单位和一个5克单位。你知道吗
我想分成五个单位:20,10,5,1和0.5。你知道吗
如果有人对我的问题有一个快速的提示,将不胜感激。你知道吗
敬礼
你应该先考虑解决这个问题。所以基本上你要做的就是把一个数字分成一个已知组件的分区。这也被称为Change-making problem。您可以为此选择贪心算法,只要可能,该算法始终采用最大的组件大小:
因此,这将返回一个字典,从每个单元映射到该单元的计数,以获得目标数字。你知道吗
您只需要为原始列表中的每个项调用该函数。你知道吗
一种方法是用双for循环。外循环是您输入的数字,内循环是您要计算的值(即[20,10,5,1,0.5])。对于内循环的每次迭代,找出值进入数的次数(使用floor方法),然后使用模运算符将数重新指定为余数。在每个循环中,你可以让它打印出你想要的信息:)我不知道你到底想要什么样的输出,但我希望这有帮助!你知道吗
例如:
相关问题 更多 >
编程相关推荐