zl程序教程

您现在的位置是:首页 >  前端

当前栏目

华为OD机试 - 选座位(JavaScript) | 机试题+算法思路+考点+代码解析 【2023】

2023-09-11 14:20:20 时间

选座位

题目

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

  • 例如:
    • 位置A与左右有员工落座的位置距离分别为22
    • 位置B与左右有员工落座的位置距离分别为23
    • 影响因素都为两个位置,则认为作为AB与左右位置的社交距离是一样的
    • 如果有多个这样的座位
    • 则坐到索引最小的那个座位

输入

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

输出

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

示例一

输入

10
[1,1,1