2023-08-22力扣每日一题

链接:

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

题意:

找一个离人最远的位置

解:

每个位置都用左边的人和右边的人更新一遍距离即可

实际代码:

c++ 复制代码
#include<bits/stdc++.h>
using namespace std;
int maxDistToClosest(vector<int>& seats)
{
    int lg=seats.size();
    vector<int>distance(lg,INT_MAX);

    int near=-1;
    for(int i=0;i<lg;i++)
    {
        if(seats[i]) near=i;
        if(near!=-1) distance[i]=min(distance[i],i-near);
    }
    near=-1;int ans=-1;
    for(int i=lg-1;i>=0;i--)
    {
        if(seats[i]) near=i;
        if(near!=-1) distance[i]=min(distance[i],near-i);
        ans=max(ans,distance[i]);
    }
    return ans;
}
int main()
{
    return 0; 
}

限制:

  • 2 <= seats.length <= 2 * 104
  • seats[i]01
  • 至少有一个 空座位
  • 至少有一个 座位上有人
相关推荐
闻道且行之7 小时前
TurboOCR:基于PP-OCRv6的极速Windows离线OCR工具,深度解析3.4GB依赖背后的技术架构
c++·人工智能·python·qt·机器学习·ocr
c2385610 小时前
Bug 猎手入门指南
c++·算法·bug
玖玥拾11 小时前
C++ 数据结构 八大基础排序算法专题
数据结构·c++·算法·排序算法
YYYing.12 小时前
【C++大型项目之高性能服务器框架 (七) 】Socket与ByteArray模块
服务器·c++·后端·框架·高性能·c/c++
从零开始的代码生活_12 小时前
C++ list 原理与实践:双向链表、迭代器与简化实现
开发语言·c++·后端·学习·算法·链表·list
charlie11451419112 小时前
现代C++工程实践——WeakPtr 第二关:核心骨架与控制块
开发语言·c++
2401_8697695913 小时前
内容9 string 1
c++
ComputerInBook14 小时前
C & C++ 中的关键字 volatile 之详解
c语言·c++·volatile·编译器优化
XH华14 小时前
C++语言第二章类和对象(下)
开发语言·c++
从零开始的代码生活_14 小时前
C++ stack、queue 与 priority_queue:容器适配器原理与实战
开发语言·c++·后端·学习·算法