网站建设 北京 淘宝,云南省建设执业注册管理中心网站,品牌建设怎么写,ip提取网站源码带后台LeetCode-day08-881. 救生艇 题目描述示例示例1#xff1a; 思路代码 题目描述
给定数组 people 。people[i]表示第 i 个人的体重 #xff0c;船的数量不限#xff0c;每艘船可以承载的最大重量为 limit。
每艘船最多可同时载两人#xff0c;但条件是这些人的重量之和最多… LeetCode-day08-881. 救生艇 题目描述示例示例1 思路代码 题目描述
给定数组 people 。people[i]表示第 i 个人的体重 船的数量不限每艘船可以承载的最大重量为 limit。
每艘船最多可同时载两人但条件是这些人的重量之和最多为 limit。
返回 承载所有人所需的最小船数 。
示例
示例1 输入people [1,2], limit 3 输出1 解释1 艘船载 (1, 2) 输入people [3,2,2,1], limit 3 输出3 解释3 艘船分别载 (1, 2), (2) 和 (3) 输入people [3,5,3,4], limit 5 输出4 解释4 艘船分别载 (3), (3), (4), (5) 思路
采用排序贪心策略。使用两个指针进行前后判断。中等题型!
代码 public int numRescueBoats(int[] people, int limit) {int ans 0;Arrays.sort(people);int l 0,r people.length-1;while (l r){if (people[l] people[r] limit){l;}r--;ans;}return ans;}