C++礼物兑换

礼物兑换

题目描述
小Z参加了全国小学生信息学比赛并获得了金奖,金奖的获得者会获得一叠礼物兑换券作为奖励,这叠兑换券一共有n张,从上到下编号为1到n,而且每张兑换券上有一个数字pi表示这个兑换券的面额.拿着兑换券就可以到礼物兑换屋兑换礼物了,小科拿着这叠兑换券高兴的来到了礼物屋,礼物屋里一共有m个礼物,所有的礼物按照编号1到m从左到右的顺序摆好的,每个礼物上都有一个标价ci表示这个礼物的价格

礼物兑换也是有规则,兑换规则如下:

① 兑换券要从上往下一张张的使用,如果第i张兑换券没有被使用,则不能使用后面兑换券。

② 兑换礼物时,兑换券的面额要不小于所要兑换的礼物的价格

③ 一张兑换券只能使用一次兑换一个礼物,并且不找零,不能叠加使用。

④ 兑换礼物时也需要按照编号从1到m的顺序兑换,如果当前手里第i张兑换券的金额不足以兑换第j个礼物可以选择不对第j个礼物,可以去尝试兑换第j+1个礼物。如果第i张兑换券对话了第j个礼物,那么第i+1张兑换券只能从第j+1张兑换券开始尝试兑换。

例如 小Z手里有4张兑换券,从上到下面额依次为{5,3,4,6},礼物屋里有5个礼物,从左到右标价一次为{2,4,5,2,4}

第1张兑换券面额为5,第1个礼物的价格为2,可以兑换,第2张兑换券面额为3,而第2个礼物的价格为4,不能兑换,第3个礼物的价格为5也不能兑换,第4个礼物的价格为2可以兑换,第3张兑换券面额为4,第5个礼物的价格为4可以兑换,所以小Z一共兑换了3个礼物。

请你帮助小Z计算一下他最多能够兑换多少个礼物

输入格式
第一行,两个整数n和

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值