华为OD机试 - 快递运输(Java)

这是一道华为在线测评(OD)中的题目,涉及货车运输快递的优化问题。给定每个快递的重量及货车的最大载重,求最多能装多少个快递。解决方案采用贪心策略,按快递重量升序排列,逐个累加,直至总重量超过货车载重限制。

题目描述

一辆运送快递的货车,运送的快递放在大小不等的长方体快递盒中,为了能够装载更多的快递,同时不能让货车超载,需要计算最多能装多少个快递。

注:快递的体积不受限制,快递数最多1000个,货车载重最大50000

输入描述

第一行输入每个快递的重量,用英文逗号隔开,如 5,10,2,11

第二行输入货车的载重量,如 20

输出描述

输出最多能装多少个快递,如 3

备注

  • 不需要考虑异常输入

用例

输入 5,10,2,11
20
输出         
说明 货车的载重量为20,最多只能放三个快递5、10、2,因此输出3

 题目解析

装最多件数,但是不能超载,因此,我们应该尽量选择重量小的快递。因此,可以将输入的快递重量数组进行升序,依次累加,看总重量是否超过限制即可,超过限制,则对应快递不能加入,最多只能

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清水乐园

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值