当前位置:   article > 正文

Python:1020 月饼_python分月饼动态规划

python分月饼动态规划

一、题目

在这里插入图片描述

二、代码

思路分析
又是闹心的一题,用 python 写虽然省力,但是想拿满分有点不省心

注意
学了一招二维列表的使用,及调用,很方便

对于题目中出现小数保留,所以初始的 库存列表和售价列表应为 float 类型

比较纳闷的就是 最后那个 print 我以为放在 break 前就可以,反正退出去时,n 一定为 0,然而不是,每一步还是分开写比较好

m, n = map(int, input().split())

num = list(map(float, input().split()))
price = list(map(float, input().split()))

price_ave = [[price[i]/num[i],i] for i in range(m)]
price_ave.sort(reverse=True)
money = 0

for price_s,j in price_ave:
    if n !=0:
        if num[j] >=n:
            money = money + n*price_s
            n = 0
        else:
            money = money + price[j]
            n = n - num[j]
    else:
        break

print("%.2f" % money)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/798379
推荐阅读
相关标签
  

闽ICP备14008679号