#4442. 连续升温天数 / Consecutive Rising Temperatures

连续升温天数 / Consecutive Rising Temperatures

题目描述

高桥君喜欢气象观测,每天记录最高气温。他连续记录了 NN 天的气温数据。

ii 天(1iN1 \leq i \leq N)记录的最高气温是 AiA_i ℃。

高桥君关注气温严格递增的连续天数。具体来说,对于满足 1l1 \leq ll+k1Nl + k - 1 \leq N 的整数 l,kl, k,如果从第 ll 天到第 l+k1l+k-1 天的 kk 天内气温满足:

Al<Al+1<<Al+k1A_l < A_{l+1} < \cdots < A_{l+k-1}

则称这 kk 天为一个长度为 kk上升期间。当 k=1k=1 时条件显然满足,因此任意单天都是长度为 11 的上升期间。

高桥君想知道,在记录的 NN 天数据中,最长的上升期间的长度是多少。请计算这个最大值。

输入格式

第一行一个整数 NN

第二行 NN 个整数 A1,A2,,ANA_1, A_2, \ldots, A_N

输出格式

输出一个整数,表示最长上升期间的长度。

7
20 22 21 23 25 27 24
4
12
15 18 20 19 17 18 19 20 21 22 20 21
6
20
-5 -3 0 2 5 8 12 15 14 13 10 11 12 13 14 15 16 17 18 20
10

数据范围

  • 1N2×1051 \leq N \leq 2 \times 10^5
  • 40Ai45-40 \leq A_i \leq 45
  • 输入均为整数

提示

本题考查数组遍历和简单模拟。遍历数组,统计当前连续递增的长度,遇到不满足递增的位置时更新答案并重新计数。

时间复杂度 O(N)O(N),空间复杂度 O(N)O(N)

来源

AtCoder AWC 0052A