饿了么3.23 人麻了

第一题做不来,给我学建筑的npy10分钟解出来了
😭😭😭

题目:
你正在玩一款打怪游戏,你会两个技能,技能1:旋风斩,让所以怪扣一滴血,消耗一点体力;技能2:斩杀,直接杀死一个不是满血的怪,消耗2点体力。求杀死所有小怪花费的最少体力。

解题:
nums记录所有小怪都血量。
先对nums从小到大排序。
p,q是数组下标,一开始为0和nums.size-1,指向小怪血量的最小/最大值。
skill1记录旋风斩消耗的体力。
skill2记录斩杀消耗的体力。
上来先旋风斩一刀skill1=1,p向右移动直到nums[p]>skill1。
如果(nums[q]-skill1)/2skill1。
否则,用一次斩杀,杀掉nums[q],skill += 2,q -= 1。
一直循环直到p>q。
最后返回skill1+skill2
还是贪心的思路。
全部评论
感谢
点赞 回复 分享
发布于 2024-03-25 13:07 浙江
测试输入 1 1 4 答案 3 解释: 1刀旋风斩变成 0 0 3,再来一刀斩杀即可
点赞 回复 分享
发布于 2024-03-24 23:32 广东

相关推荐

点赞 评论 收藏
分享
08-27 21:03
已编辑
成都理工大学 Java
冷花幽露:大概率是了,京东面试就是这样。我上周一面也是20多分钟,面试官问的很刁钻的问题也答上来了,面完过了几天还是没推进,泡池子,昨天一看挂了。如果一面完第2天没有收到2面邀请,基本上不用抱希望了。如果你的bg是985,面试流程也是和我们一样,20多分钟,唯一区别就是面完他们会很快收到二面邮件,而不像我们泡池子然后挂掉
点赞 评论 收藏
分享
亲切的00后在笔试:我也遇到了,所以我早他一步查看图片
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
3
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务