题目的规定有一下三点 1.每成功上报一条日志,奖励1分. 2.每条日志每延迟1s上报扣1分 3.到100条日志必须上报
for循环枚举i每一时刻,pre表示前i-1时刻日志总和,在利用一个循环求出目前时刻所得总分.当pre+now大于等于100时应立刻break.答案即是每个时刻得分的最大值
日志采集是运维系统的的核心组件。日志是按行生成,每行记做一条,由采集系统分批上报。
为此,项目组设计了如下的上报策略:
给出日志序列,根据该规则,计算首次上报能获得的最多积分数。
按时序产生的日志条数 T1,T2,…,Tn,其中
首次上报最多能获得的积分数
输入
1 98 1
输出
98
说明
T1 时刻上报得 1 分
T2 时刻上报得98分,最大
T3 时刻上报得 0 分
输入
50 60 1
输出
50
说明
如果第1个时刻上报,获得积分50。
如果第2个时刻上报,最多上报100条,前50条延迟上报1s,每条扣除1分,共获得积分为 100−50=50
输入
3 7 40 10 60
输出
37
说明
T1时刻上报得3分
T2时刻上报得7分
T3时刻上报得37分,最大
T4时刻上报得−3分
T5时刻上报,因为已经超了100条限制,所以只能上报100条,得−23分