欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 【贪心算法】在有盾牌的情况下能通过每轮伤害的最小值(亚马逊笔试题)

【贪心算法】在有盾牌的情况下能通过每轮伤害的最小值(亚马逊笔试题)

2025/1/30 16:02:22 来源:https://blog.csdn.net/weixin_51574797/article/details/145359242  浏览:    关键词:【贪心算法】在有盾牌的情况下能通过每轮伤害的最小值(亚马逊笔试题)

题目描述

思路:
采用贪心算法,先计算出来所有的伤害值,然后再计算每轮在使用盾牌的情况下能减少伤害的最大值,最后用总的伤害值减去能减少的最大值就是最少的总伤害值

public static long getMinimumValue(List<Integer> power, int armor) {long totalDamage = 0;int maxReduction = 0;for (int p : power) {totalDamage += p;// 护甲在该轮能减少的伤害int reduction = Math.min(p, armor);if (reduction > maxReduction) {maxReduction = reduction;}}// 总伤害 - 最大减少量 + 1(保证血量>0)return totalDamage - maxReduction + 1;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com