比赛 NOIP2023模拟赛4 评测结果 AWWWWWWWWWWWWWWWWWWW
题目名称 等差子序列 最终得分 5
用户昵称 黄天宇 运行时间 0.157 s
代码语言 C++ 内存使用 4.12 MiB
提交时间 2023-11-16 11:53:13
显示代码纯文本
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int t;
int n;
int a[10005];
int sum1[10005];
int sum2[10005];
int s[10005];
bool b;
int main(){
    freopen("sequence.in","r",stdin);
    freopen("sequence.out","w",stdout);
    cin>>t;
    while(t--){
        b=0;
        memset(a,0,sizeof(a));
        memset(sum1,0,sizeof(sum1));
        memset(sum2,0,sizeof(sum2));
        memset(s,0,sizeof(s));
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>a[i];
        }
        for(int i=1;i<n;i++){
            s[i]=a[i+1]-a[i];
            if(s[i]!=s[i-1]){
                sum1[s[i-1]]=0;
                sum2[-s[i-1]]=0;
            }
            if(s[i]>=0){
                sum1[s[i]]++;
            }
            if(s[i]<0){
                sum2[-s[i]]++;
            }
            if(sum1[s[i]]>=2||sum2[-s[i]]>=2){
                cout<<"Y"<<endl;
                b=1;
                break;
            }
        }
        if(b) continue;
        cout<<"N"<<endl;
        
    }
    return 0;
}