一、题目描述
某云短信厂商,为庆祝国庆,推出充值优惠活动。
现在给出客户预算,和优惠售价序列,求最多可获得的短信总条数。
二、输入描述
第一行客户预算M,其中 0<=M<=1000000。
第二行给出售价表,P1,P2…Pn, 其中 1<=n<=100,Pi为充值i元获得的短信条数。 1<=Pi<=1000, 1<=n<=100。
三、输出描述
最多获得的短信条数。
四、解题思路
- 如果客户预算小于0 或者 已计算的元素下角标大于客户预算,返回当前短信条数;
- 从已计算的元素下角标开始遍历出售价表;① 计算充值金额为i+1元时获得的短信条数,递归调用(客户预算、出售价表、短信条数msgCount + arr[i]、已计算的元素下角标);② 计算未选择当前售价时获得的短信条数p2,递归调用,③ 更新max,为max、p1、p2中的最大值;
- 返回最多获得的短信条数;