AlgoMooc
← 返回题库

X3021. 小慕的购物系统降级规则

中等通过率 70% · 提交 10 · 通过 7
二分查找排序贪心

小慕正在开发一个购物平台,平台的核心订单处理系统会被 N 个服务模块调用。这些模块负责接收来自不同渠道的订单请求,并将这些请求转发给核心订单处理系统。每个模块有不同的调用量 R=[R_1, R_2, ..., R_N],表示在一定时间内,这个模块向核心订单处理系统发送的订单请求数量。核心订单处理系统必须能够及时处理所有请求,以保证订单正常流转。 然而,最近核心订单处理系统出现了服务器故障,导致请求处理速度变慢。为了避免系统崩溃,必须临时。具体而言,核心订单处理系统能承受的最大调用量为 cnt,如果模块发送的请求总量超过 cnt,则必须限制一些模块的请求数量,以确保核心订单处理系统不会超负荷运行。 现在需要设计一个降级策略,来限制模块的请求数量。策略如下: 如果 sum(R_1, R_2, ..., R_N) 小于等于 cnt,则所有模块可以正常调用,返回 -1; 如果 sum(R_1, R_2, ..., R_N) 大于 cnt,则必须设定一个阈值 value,如果某个模块发起的调用量超过 value,则该模块的请求数量必须限制为 value。其余未达到 value 的模块可以正常发起调用。要求求出最大的 value(value 可以为 0)。 为了保证订单的正常处理,必须保证模块请求的总数量不会超过核心订单处理系统的最大调用量,同时最大的 value 要尽可能大。需要高效地解决这个问题,以确保购物平台的稳定性。

提示:带虚线的词点一下有通俗解释。

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解(训练营专属)

登录后查看题目图解

题目图解为训练营学员专属内容,请先登录。

微信扫码登录还不是训练营学员?了解训练营 →
写完代码点「提交」,将对全部测试用例判题。