LeetCode 救生艇

题目地址:https://leetcode.cn/problems/boats-to-save-people/description/

给定数组 people 。people[i]表示第 i 个人的体重 ,船的数量不限,每艘船可以承载的最大重量为 limit。

每艘船最多可同时载两人,但条件是这些人的重量之和最多为 limit。

返回 承载所有人所需的最小船数 。

go 复制代码
// 思路:排序 双指针
// 如果 people[left]+people[right] > limit 说明右指针的人体重太大单独需要一个船
// 否则 people[left]和 people[right] 可以共上一艘船

func numRescueBoats(people []int, limit int) int {
	sort.Ints(people)
	ans := 0
	left := 0
	right := len(people) - 1
	for left <= right {
		if people[left]+people[right] > limit {
			right--
			ans++
		} else {
			left++
			right--
			ans++
		}
	}
	return ans
}
相关推荐
Insight3 分钟前
拒绝手动 Copy!一文吃透 PyTorch/NumPy 中的广播机制 (Broadcasting)
算法
CoovallyAIHub24 分钟前
工业视觉检测:多模态大模型的诱惑
深度学习·算法·计算机视觉
Jayden_Ruan31 分钟前
C++分解质因数
数据结构·c++·算法
bubiyoushang8881 小时前
MATLAB实现雷达恒虚警检测
数据结构·算法·matlab
wu_asia1 小时前
编程技巧:如何高效输出特定倍数数列
c语言·数据结构·算法
AlenTech1 小时前
207. 课程表 - 力扣(LeetCode)
算法·leetcode·职场和发展
DICOM医学影像2 小时前
2. go语言从零实现以太坊客户端-查询区块链账户余额
开发语言·golang·区块链·以太坊·web3.0·hardhat
练习时长一年2 小时前
LeetCode热题100(杨辉三角)
算法·leetcode·职场和发展
lzllzz232 小时前
bellman_ford算法
算法
栈与堆2 小时前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表