围观测评题(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步要考虑全部优惠活动,以免错过最后一个花钱的机会呀(虽然已经没有优惠了)~~~

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

目录
相关文章
|
6月前
|
安全 网络协议 网络安全
网安科班精选!爱荷华大学教授的网络安全零基础入门教程!
网络就像一把双刃剑,给我们的生活、交流、工作和发展带来了便利,但同时也给信息安全以及个人隐私带来了威胁。网络和信息安全问题不仅影响了网络的普及和应用,还关系到企国家、军队、企业的信息安全和社会的经济安全,让人又爱又恨。 今天给大家分享的这份手册,主要从网络漏洞、协议和安全解决方案等方面来探讨网络安全问题。我们把网络看成是不安全和安全的源头,通过分析网络漏洞、探测、攻击和减少攻击的方法,来研究不同的网络协议。
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
73 0
【杂谈】恭喜自己获得CSDN专家称号,努力终会换来结果
|
人工智能 算法 前端开发
8月博主有奖征文,百分百得奖
8月博主有奖征文,百分百得奖
1659 35
8月博主有奖征文,百分百得奖
|
人工智能 算法 安全
第二届 1024 中国工程师文化日议程全览,你不能错过的 N 个理由
第二届 1024 中国工程师文化日议程全览,你不能错过的 N 个理由
228 0
|
人工智能 算法 前端开发
7月博主有奖征文,百分百得奖
7月博主有奖征文,百分百得奖
1379 14
|
弹性计算 数据可视化 程序员
大学生发表文章
利用阿里云开发者社区提供的飞天计划完成的,十分感谢这个平台,让我多一次学习机会,请审核员通过一下,我们学校的需要这个完成作业,感谢你们!
大学生发表文章
|
移动开发 Kubernetes Cloud Native
《乘风者周刊》 专家博主:琦彦 ——一个半路出家的文科生如何逆袭成技术大咖
“二流的技术人员,善于倾听、善于交流,也能作出一流的成绩”
28483 0
《乘风者周刊》 专家博主:琦彦 ——一个半路出家的文科生如何逆袭成技术大咖