DAY 33 LeetCode学习笔记

881. 救生艇

前言

今天忙了一天,靠着自己本科学生工作经验还是提高了不少的工作效率,明天从早到晚都在上课,疲惫。
今天的题目还是贪心法,由于一艘船最多带两个人,所以我们采用最重的和最轻的人搭档,首先进行排序,之后用双指针,可以得到只要在左指针小于右指针时,就要增加一艘船,当最重加最轻的小于等于限制时,左指针移动,右指针无论如何都会左移。

题目

添加链接描述

源码

在这里插入图片描述

class Solution {
    public int numRescueBoats(int[] people, int limit) {
        Arrays.sort(people);
        int ans=0,i=0,j=people.length-1;
        while (i<=j){
            ans++;
            if(people[i]+people[j]<=limit){
                i++;
            }
            j--;
        }
        return ans;

    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值