303090: CF602B. Approximating a Constant Range
Memory Limit:256 MB
Time Limit:2 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Approximating a Constant Range
题意翻译
给你一个相邻数差不超过 $1$ 的序列,求最长子串的长度,满足子串中的最大值减最小值也不超过 $1$。题目描述
When Xellos was doing a practice course in university, he once had to measure the intensity of an effect that slowly approached equilibrium. A good way to determine the equilibrium intensity would be choosing a sufficiently large number of consecutive data points that seems as constant as possible and taking their average. Of course, with the usual sizes of data, it's nothing challenging — but why not make a similar programming contest problem while we're at it? You're given a sequence of $ n $ data points $ a_{1},...,a_{n} $ . There aren't any big jumps between consecutive data points — for each $ 1<=i<n $ , it's guaranteed that $ |a_{i+1}-a_{i}|<=1 $ . A range $ [l,r] $ of data points is said to be almost constant if the difference between the largest and the smallest value in that range is at most $ 1 $ . Formally, let $ M $ be the maximum and $ m $ the minimum value of $ a_{i} $ for $ l<=i<=r $ ; the range $ [l,r] $ is almost constant if $ M-m<=1 $ . Find the length of the longest almost constant range.输入输出格式
输入格式
The first line of the input contains a single integer $ n $ ( $ 2<=n<=100000 $ ) — the number of data points. The second line contains $ n $ integers $ a_{1},a_{2},...,a_{n} $ ( $ 1<=a_{i}<=100000 $ ).
输出格式
Print a single number — the maximum length of an almost constant range of the given sequence.
输入输出样例
输入样例 #1
5
1 2 3 3 2
输出样例 #1
4
输入样例 #2
11
5 4 5 5 6 7 8 8 8 7 6
输出样例 #2
5