Advertisement

Python 货币找零功能(基于某个框架或库)

阅读量:

贪心策略

复制代码
 value = [1, 5, 10, 25]   #零钱分类

    
 ans = [0] * len(value)   #根据硬币种类创建数组
    
 print(ans)
    
 n = len(value)
    
 money = int(input())
    
 for j in range(0,n):
    
     i = n - j - 1     # 从最大金额开始(j从0开始,i=n-j-1 刚还对应value[i]最后一个元素,即最大面额的货币)
    
     ans[i] = money // value[i]   #用面值最大的硬币除,不能除就是0
    
     money = money - ans[i] * value[i]  # 余下待找的零钱为money - ans[i] * value[i].
    
     # ans[i]为value数组第i位货币对应的数量,value[i]为第i位置对应的货币面额
    
  
    
 for j in range(0,n):
    
     i = n - j - 1
    
     print(value[i],'分硬币数',ans[i])
    
  
    
    
    
    
复制代码
 [0, 0, 

全部评论 (0)

还没有任何评论哟~