华为OD机试E卷 –最大社交距离–24年OD统一考试(Java & JS & Python & C & C++)

文章目录

  • 题目描述
  • 输入描述
  • 输出描述
  • 用例
  • 题目解析
  • JS算法源码
  • Java算法源码
  • python算法源码
  • c算法源码
  • c++算法源码
  • 题目描述

    疫情期间需要大家保证一定的社交距离,公司组织开交流会议。
    座位一排共 N 个座位,编号分别为 [0, N – 1] 。
    要求员工一个接着一个进入会议室,并且可以在任何时候离开会议室。

    满足:
    • 每当一个员工进入时,需要坐到最大社交距离(最大化自己和其他人的距离的座位);
    • 如果有多个这样的座位,则坐到索引最小的那个座位。

    输入描述

    会议室座位总数 seatNum
    • 1 ≤ seatNum ≤ 500

    员工的进出顺序 seatOrLeave 数组
    • 元素值为 1,表示进场
    • 元素值为负数,表示出场(特殊:位置 0 的员工不会离开)例如 -4 表示坐在位置 4 的员工离开(保证有员工坐在该座位上)

    输出描述

    最后进来员工,他会坐在第几个位置,如果位置已满,则输出-1。

    用例

    输入

    10
    [1, 1, 1, 1, -4, 1]

    输出

    5

    作者:飞码创造者

    物联沃分享整理
    物联沃-IOTWORD物联网 » 华为OD机试E卷 –最大社交距离–24年OD统一考试(Java & JS & Python & C & C++)

    发表回复