这是一道顺序模拟 / 前缀最大值题:
cur 维护当前在线连接数,初始为 0changes[i]ans 记录过程中出现过的最大 cur题面保证前缀和非负,因此不必处理负数在线。
零信任网关按时间顺序记录连接数变化序列 changes(下标从 0 开始):
changes[i] > 0:该时刻新建立的连接数changes[i] < 0:该时刻断开的连接数changes[i] = 0:无变化初始在线连接数为 0。请按顺序模拟,返回过程中在线连接数的历史最大值。
保证:任意前缀和均 ≥0(不会出现「断开数多于当前在线」的非法数据)。
请实现:
maxOnline(changes: int[]) -> int
一行:整型数组 changes,形如 [1, 2, -1, 3, -2]
约束:
一个整数:历史最大在线连接数;若 changes 为空,返回 0。
输入:
[1, 2, -1, 3, -2]
输出:
5
说明:在线数变化为 1→3→2→5→3,峰值为 5。
输入:
[3, -1, -1, -1]
输出:
3
说明:一开始升到 3,之后只减不增。
输入:
[]
输出:
0
说明:无事件,峰值为 0。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册