1 solutions

  • 0
    @ 2025-11-5 17:02:34

    C++ :

    #include <stdio.h>
    #include <algorithm>
    using namespace std;
    
    int a[1005];
    int sub[1005];
    
    int main()
    {
        //freopen("a.in","r",stdin);
        //freopen("a.out","w",stdout);
        int i,j,n,T;
        scanf("%d",&T);
        while(T--)
        {
            scanf("%d",&n);
            for (i=0;i<n;i++)
            {
                scanf("%d",&a[i]);
            }
            if (n==1) {printf("Too Many\n");continue;}
            if (n==2 && a[0]==a[1]) {printf("%d\n",a[0]);continue;}
            if (n==2) {printf("Too Many\n");continue;}
    
            for (i=0;i<n-1;i++)
            {
                sub[i]=a[i+1]-a[i];
            }
            for (i=0;i<n-1;i++)
            {
                if (sub[i]!=0) break;
            }
            if (i==n-1) {printf("%d\n",a[0]);continue;}
            if (sub[0]==0) {printf("Bad String\n");continue;}
            int prev;
            for (i=0;i<n-2;i++)
            {
                if (sub[i]!=0 && sub[i+1]%sub[i]!=0) break;
                if (i==0) prev=sub[i+1]/sub[i];
                else if (sub[i+1]!=sub[i]*prev) break;
            }
            if (i<n-2) printf("Bad String\n");
            else
            {
                int A=prev;
                int B=a[1]-a[0]*A;
                printf("%d\n",a[n-1]*A+B);
            }
        }
        return 0;
    }
    
    
    • 1

    Information

    ID
    18174
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By