围观测评题(1)

简介: 问题来了: 小明是一个爱吃零食的小伙子,平时会在网上购买各种好吃的零食。一天,小明了解到,在电商平台上购买不同种类的零食,会有各种各样的优惠活动,如:满99减50,满188减100,满288减150等,每种零食只参与其中一种优惠活动方式,还包邮哦,但也有条件,就是每种零食只限购一份。

问题来了:

小明是一个爱吃零食的小伙子,平时会在网上购买各种好吃的零食。一天,小明了解到,在电商平台上购买不同种类的零食,会有各种各样的优惠活动,如:满99减50,满188减100,满288减150等,每种零食只参与其中一种优惠活动方式,还包邮哦,但也有条件,就是每种零食只限购一份。小明看了非常心动,原来网上购买零食这么划算,可以节省很多钱,真的太好了。心动不如行动,小明马上列出了所有参与活动的零食种类和其价格,以及每种零食种类参与的优惠活动方式,小明也看了看自己支付宝里面的余额为 M(正整数)元。但是小明烦恼也来了,左算右算,也算不出怎样选择零食的组合才能使自己买到的零食总和价格最大,聪明的你帮帮小明算算,在最后支付时(优惠后)的总金额不大于 M 的前提下,小明最多可以买到零食的价值总和 N

输入数据包括:
(1)优惠活动:满减金额条件和其满减金额(小于或等于5种优惠活动);
(2)每种零食的价格和其参加的优惠活动(小于30中零食);
(3)小明支付宝金额 M。

输出:小明最多可以买到零食的价值总和 N。

我的贪心算法解法:

  1. 计算各种优惠活动中购买的零食达到满减的最小总价 K1~K5(M >= K >= S)
  2. 计算各种优惠活动最低满减后价格 n1~n5(n = K - A,N = n+)
  3. 计算参与优惠活动的最优方案(最多2^5种,最终选出 n 集合,使得 N 最大)
  4. 最后如果有剩余零钱,则对剩余可购买的零食选最优方案,使得零钱趋向于零。

PS:中途可能计算出优惠活动不可用的情况,则在第3步计算方案前将其排除。不过在第4步要考虑全部优惠活动,以免错过最后一个花钱的机会呀(虽然已经没有优惠了)~~~

小伙伴,你有想到其他解法或者对我的解法有任何意见吗?欢迎评价分享你的想法~

目录
相关文章
|
3月前
|
人工智能
快来围观!我自制的 AI 周报小能手:自动收集整理周报,一键发送邮件
快来围观!我自制的 AI 周报小能手:自动收集整理周报,一键发送邮件
58 0
|
5月前
|
前端开发 Java 关系型数据库
杨校老师项目之基于SSM社区疫情防控人员访客登记报备平台
杨校老师项目之基于SSM社区疫情防控人员访客登记报备平台
34 0
|
存储 信息无障碍 iOS开发
【评测】一名律师的语雀情缘
语雀满足了学习、工作、记录三大场景需求,为我构建数字花园打下了坚实的基础,从此我和语雀结下了深厚的精神情缘。
|
Web App开发 存储 开发者
一个单纯客观的稀土掘金浏览器插件测评 (上)
其实我最早接触掘金社区,就是先从浏览器插件开始的。没记错的话,是大圣老师给我安利的浏览器插件,当时已经决定了成为一名技术内容的创作者,而掘金浏览器插件,在我每次打算在网上冲浪的时候,都可以让我先看看技术社群最新的文章,最新的开源项目...非常方便技术内容创作者获取一手技术资讯。
545 0
一个单纯客观的稀土掘金浏览器插件测评 (上)
|
开发者
第二期乘风者之星——你的成果值得被看见
令人兴奋的第二期乘风者之星评选终于和大家见面了,我们恭喜钟原先生获得我们本周的乘风者之星!
CSDN博客专家申请成功
CSDN博客专家申请成功
202 0
CSDN博客专家申请成功
|
人工智能 编解码 安全
|
SQL 机器学习/深度学习 弹性计算
冬季实战营第五期报告
轻松入门学习大数据
117 0
|
Web App开发 弹性计算 Linux
冬季实战营第二期-报告
冬季实战营第二期
163 0