国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Leetcode每日一題:849. 到最近的人的最大距離(2023.8.22 C++)

這篇具有很好參考價值的文章主要介紹了Leetcode每日一題:849. 到最近的人的最大距離(2023.8.22 C++)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

849. 到最近的人的最大距離

題目描述:

實現(xiàn)代碼與解析:

雙指針

原理思路:


849. 到最近的人的最大距離

題目描述:

????????給你一個數(shù)組?seats?表示一排座位,其中?seats[i] = 1?代表有人坐在第?i?個座位上,seats[i] = 0?代表座位?i?上是空的(下標從 0 開始)。

至少有一個空座位,且至少有一人已經坐在座位上。

亞歷克斯希望坐在一個能夠使他與離他最近的人之間的距離達到最大化的座位上。

返回他到離他最近的人的最大距離。

示例 1:

Leetcode每日一題:849. 到最近的人的最大距離(2023.8.22 C++),Leetcode,leetcode,c++,算法

輸入:seats = [1,0,0,0,1,0,1]
輸出:2
解釋:
如果亞歷克斯坐在第二個空位(seats[2])上,他到離他最近的人的距離為 2 。
如果亞歷克斯坐在其它任何一個空位上,他到離他最近的人的距離為 1 。
因此,他到離他最近的人的最大距離是 2 。 

示例 2:

輸入:seats = [1,0,0,0]
輸出:3
解釋:
如果亞歷克斯坐在最后一個座位上,他離最近的人有 3 個座位遠。
這是可能的最大距離,所以答案是 3 。

示例 3:

輸入:seats = [0,1]
輸出:1

提示:

  • 2 <= seats.length <= 2 * 104
  • seats[i]?為?0?或?1
  • 至少有一個?空座位
  • 至少有一個?座位上有人

實現(xiàn)代碼與解析:

雙指針

class Solution {
public:
    int maxDistToClosest(vector<int>& seats) {
        
        int res = 0;
        int l = 0;

        while(l < seats.size() && seats[l] == 0) l++; // 第一個非0
        res = max(res, l); // 算一下最左側距離
        
        while(l < seats.size())
        {
            int r = l + 1;
            while(r < seats.size() && seats[r] == 0) r++; // i 后第一個非0

            if (r == seats.size()) res = max(res, r - l - 1); // 如果是最后一個,算一下與右側的距離
            else res = max(res, (r - l) >> 1); // 不是最后一個,那么最大距離是其之間的距離除2

            l = r; // 計算下一個區(qū)間
        }
        return res;
    }
};

原理思路:

? ? ? ? 簡單題,雙指針,每個區(qū)間的最大距離就是兩個非0區(qū)間差值的一半,不過左右兩側不一定有1,單獨處理一下即可。文章來源地址http://www.zghlxwxcb.cn/news/detail-672382.html

到了這里,關于Leetcode每日一題:849. 到最近的人的最大距離(2023.8.22 C++)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【LeetCode每日一題】——85.最大矩形

    【LeetCode每日一題】——85.最大矩形

    矩陣 困難 85.最大矩形 給定一個僅包含 0 和 1 、大小為 rows x cols 的二維二進制矩陣,找出只包含 1 的最大矩形,并返回其面積。 示例 1: 輸入:matrix = [[“1”,“0”,“1”,“0”,“0”],[“1”,“0”,“1”,“1”,“1”],[“1”,“1”,“1”,“1”,“1”],[“1”,“0”,“0”,“1”,“

    2024年02月13日
    瀏覽(22)
  • 【LeetCode每日一題】53. 最大子數(shù)組和

    https://leetcode.cn/problems/maximum-subarray/description/ 給你一個整數(shù)數(shù)組 nums ,請你找出一個具有最大和的連續(xù)子數(shù)組(子數(shù)組最少包含一個元素),返回其最大和。 子數(shù)組 是數(shù)組中的一個連續(xù)部分。 先算出數(shù)組的前綴和,然后通過2個for循環(huán)遍歷出所有的連續(xù)子數(shù)組。 尋找一個具有

    2024年02月04日
    瀏覽(25)
  • 每日一題——LeetCode1189.氣球的最大數(shù)量

    每日一題——LeetCode1189.氣球的最大數(shù)量

    方法一 個人方法: 統(tǒng)計text字符串中\(zhòng)\\'b\\\'、\\\'a\\\'、\\\'l\\\'、\\\'o\\\'、\\\'n\\\'?這幾個字符出現(xiàn)的次數(shù) l和n需要兩個才能拼成一個balloon,所以碰到l和o加1,其他字符加2 最后求出出現(xiàn)次數(shù)最少的那個字符再除以2就是能拼湊成的單詞數(shù)量,避免出現(xiàn)小數(shù)要使用向下取整 消耗時間和內存情況: 方法

    2024年02月01日
    瀏覽(40)
  • 【LeetCode每日一題】410. 分割數(shù)組的最大值

    【LeetCode每日一題】410. 分割數(shù)組的最大值

    2024-1-21 410. 分割數(shù)組的最大值 思路:二分查找+貪心 利用二分查找法和貪心算法來求解將數(shù)組分割為m個非空連續(xù)子數(shù)組,使得每個子數(shù)組的和的最大值最小 首先,我們需要確定二分查找的左右邊界。左邊界 left 初始化為數(shù)組中的最大值,右邊界 right 初始化為數(shù)組所有元素的

    2024年01月23日
    瀏覽(25)
  • LeetCode每日一題——1691. 堆疊長方體的最大高度

    LeetCode每日一題——1691. 堆疊長方體的最大高度

    題目: 828. 統(tǒng)計子串中的唯一字符 難度: 困難 給你 n 個長方體 cuboids ,其中第 i 個長方體的長寬高表示為 cuboids[i] = [widthi, lengthi, heighti](下標從 0 開始)。請你從 cuboids 選出一個 子集 ,并將它們堆疊起來。 如果 widthi = widthj 且 lengthi = lengthj 且 heighti = heightj ,你就可以將

    2024年02月10日
    瀏覽(26)
  • 【Leetcode】【每日一題】【中等】1465. 切割后面積最大的蛋糕

    【Leetcode】【每日一題】【中等】1465. 切割后面積最大的蛋糕

    力扣(LeetCode)官網 - 全球極客摯愛的技術成長平臺 備戰(zhàn)技術面試?力扣提供海量技術面試資源,幫助你高效提升編程技能,輕松拿下世界 IT 名企 Dream Offer。 https://leetcode.cn/problems/maximum-area-of-a-piece-of-cake-after-horizontal-and-vertical-cuts/description/?envType=daily-questionenvId=2023-10-27 矩形

    2024年02月07日
    瀏覽(21)
  • LeetCode每日一題——813. 最大平均值和的分組

    LeetCode每日一題——813. 最大平均值和的分組

    題目: 813. 最大平均值和的分組 難度: 普通 給定數(shù)組 nums 和一個整數(shù) k 。我們將給定的數(shù)組 nums 分成 最多 k 個相鄰的非空子數(shù)組 。 分數(shù) 由每個子數(shù)組內的平均值的總和構成。 注意我們必須使用 nums 數(shù)組中的每一個數(shù)進行分組,并且分數(shù)不一定需要是整數(shù)。 返回我們所能

    2024年02月13日
    瀏覽(31)
  • ( 數(shù)組和矩陣) 485. 最大連續(xù) 1 的個數(shù) ——【Leetcode每日一題】

    ( 數(shù)組和矩陣) 485. 最大連續(xù) 1 的個數(shù) ——【Leetcode每日一題】

    難度:簡單 給定一個二進制數(shù)組 nums , 計算其中最大連續(xù) 1 的個數(shù)。 示例 1: 輸入:nums = [1,1,0,1,1,1] 輸出:3 解釋:開頭的兩位和最后的三位都是連續(xù) 1 ,所以最大連續(xù) 1 的個數(shù)是 3. 示例 2: 輸入:nums = [1,0,1,1,0,1] 輸出:2 提示: 1 = n u m s . l e n g t h = 1 0 5 1 = nums.length = 10^5

    2024年02月08日
    瀏覽(28)
  • 每日一題——LeetCode1299.將每個元素替換為右側最大元素

    每日一題——LeetCode1299.將每個元素替換為右側最大元素

    方法一 個人方法: ?題目意思就是求在i=1;i++的循環(huán)條件下,arr[i]-arr[arr.length-1]的最大值分別為多少,最后一項默認為-1 用slice方法可以每次把數(shù)組第一位去除,得到求最大值的目標數(shù)組 Math的max方法可以直接返回數(shù)組里的最大值 但是不能每次循環(huán)都求一遍目標數(shù)組的最大值,

    2024年01月23日
    瀏覽(23)
  • LeetCode每日一題:1921. 消滅怪物的最大數(shù)量(2023.9.3 C++)

    目錄 1921. 消滅怪物的最大數(shù)量 題目描述: 實現(xiàn)代碼與解析: 貪心 原理思路: ????????你正在玩一款電子游戲,在游戲中你需要保護城市免受怪物侵襲。給你一個? 下標從 0 開始 ?且長度為? n ?的整數(shù)數(shù)組? dist ?,其中? dist[i] ?是第? i ?個怪物與城市的? 初始距離 (

    2024年02月10日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包