luogu#P8081. [COCI2011-2012#4] ZIMA

[COCI2011-2012#4] ZIMA

题目描述

给定 NN 天的气温情况。规定:

  • 当一天的温度小于 00 时,则称之为冰冻日。
  • 当连续 TT 天都是冰冻日时,则称之为一个持续时间为 TT 的冰期。

冰期来临之前的若干天都会被标为警示状态。若一个冰期的持续时间为 TT 天,则规定:

  • 若一段冰期不是所有冰期中最长的,那么冰期来临之前的 2T2T 天都被标记为警示状态。
  • 若一段冰期是所有冰期中最长的,那么冰期来临之前的 3T3T 天都被标记为警示状态。特别地,如果有多个最长的冰期,则只有一个被标记 3T3T 天,其它的都为 2T2T 天。
  • 若当前正处于冰期,则不允许对当前冰期进行警示,但若条件允许,可以对未来的冰期进行警示。

你可以任意选择一个最长的冰期使得其来临之前需要被标记 3T3T 天。求在所有选择的情况中,处于警示状态天数的最大值。

输入格式

第一行,一个正整数 NN

第二行,NN 个整数 TiT_i,表示这 NN 天的温度。

输出格式

输出处于警示状态天数的最大值。

8
1 -1 4 3 8 -2 3 -3
6
15
1 2 -1 2 3 4 5 6 1 4 8 3 -1 -2 1
8

提示

【样例 1 解释】

长度最长的冰期有 33 个:-1; -2; -3\texttt{-1; -2; -3}

当选择 -2\texttt{-2} 作为需要在来临之前标记 3T3T 天为警示状态的冰期时,处于警示状态的天数最大:

天数 11 22 33 44 55 66 77 88
温度 11 1-1 44 33 88 2-2 33 3-3
是否为冰期
是否处于警示状态

【数据规模与约定】

  • 对于 40%40\% 的数据,最长的冰期唯一。
  • 对于 100%100\% 的数据,1N1051 \le N \le 10^5Ti100|T_i| \le 100

【提示与说明】

题目译自 COCI 2011-2012 CONTEST #4 Task 2 ZIMA

本题分值按 COCI 原题设置,满分 100100。由于洛谷不支持非整数分数,因此对于除不尽的情况进行了调整。