CF365B The Fibonacci Segment 题解

思路

思路蛮简单,因为“好的”必须是要连续的,所以可以直接暴力枚举一遍序列。如果当前数满足条件就计数器累加,不满足条件就取 \(\max\),然后计数器就重置为 \(2\) 即可,注意,长度为 \(\leq 2\) 的数列肯定是“好的”,直接输出 \(n\) 即可。

#include <bits/stdc++.h>
using namespace std;
int n,tot=2,ans,a[100001];
int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;++i) scanf("%d",&a[i]);    
    for(int i=3;i<=n;i++)
    {
        if(a[i]==a[i-1]+a[i-2]) tot++;
        else tot=2;
        ans=max(ans,s);
    }
    if(n<=2)
        printf("%d",n);
    else
        printf("%d",ans);
    return 0;
}
posted @ 2023-07-01 10:33  liukejie  阅读(12)  评论(0)    收藏  举报