有趣的跳跃//哪错了?????

#include<bits/stdc++.h>
using namespace std;
int n,a[100086],b[100086],bt[100086],ok=1;
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>a[i];
    for(int i=1;i<n;i++)
    {
        b[i]=abs(a[i]-a[i+1]);
        bt[i]=b[i];
    }
    sort(b+1,b+1+n);
    int t=1;
    for(int i=n;i>=1;i--)
        if(b[i]!=bt[t++])
            ok=0;
    if(ok)
        cout<<"Jolly";
    else
        cout<<"Not jolly";
    return 0;
}

2 条评论

  • #include<bits/stdc++.h>
    using namespace std;
    int n,a[3005],jdz[3005];
    bool ok=true;
    int main()
    {
        cin>>n;
        for(int i=1;i<=n;i++)cin>>a[i];
        for(int i=1;i<=n;i++)
            jdz[i]=abs(a[i]-a[i+1]);
        sort(jdz+1,jdz+1+n);
        for(int i=1;i<n;i++)
            if(jdz[i]!=i)
            {
                ok=false;break;
            }
        if(ok)
            cout<<"Jolly";
        else
            cout<<"Not jolly";
        return 0;
    }
    
  • 错了1个点

  • 1