#JSUTFPC2025K. Rabbit Sequence —— 兔子序列

Rabbit Sequence —— 兔子序列

题面描述

兔子序列又称斐波那契序列,如果称一个长度为 nn 的序列 {an}\left\{ a_n \right\} 为兔子序列,当且仅当它满足下面的条件之一:

  1. n=1n=1n=2n=2
  2. n3n\geqslant 3 时,  i[3,n]\forall ~ i\in [3,n] 满足 ai2+ai1=aia_{i-2}+a_{i-1}=a_i

给定一个正整数组成的数组 aa,求数组 aa 的最长连续兔子子序列的长度 [1]

输入描述

第一行为一个整数 nn 表示序列长度;其中 nn 满足 1n1×1051\leqslant n\leqslant 1\times 10^5

第二行为 nn 个整数 aia_i 表示数组中每个数的个数;其中每一个数满足 1ai1×1091\leqslant a_i\leqslant 1\times 10^9

输出描述

输出一个整数,表示 {an}\left\{ a_n \right\} 的最长连续兔子子序列的长度。

样例

8
1 1 1 1 2 3 5 1
5
5
5 2 7 9 16
5

注释

对于第一组样例 x1+x2=3x_1+x_2=3 的可能结果为:

  1. x1=0,x2=3x_1=0,x_2=3,
  2. x1=1,x2=2x_1=1,x_2=2,
  3. x1=2,x2=1x_1=2,x_2=1,
  4. x1=3,x2=0x_1=3,x_2=0.

共 4 组解。


  1. 称序列 s1s_1 是序列 s2s_2 的连续兔子子序列,当且仅当存在区间 [,r][\ell, r],使得 s1s_1 恰好等于 s2s_2 在该区间内的子序列并且 s1s_1 为兔子序列。 ↩︎