Submission #398850

#TimeUsernameProblemLanguageResultExecution timeMemory
398850Abdulmohsen1284Three Friends (BOI14_friends)C++14
0 / 100
27 ms9056 KiB
#include <bits/stdc++.h>

using namespace std;
//long long mo=1000000007;
//long long num[100005],dis[100005],di[100005],d[100005],eis[100005],ei[100005],e[100005];
long long a[120];
int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    long long n;
    cin>>n;
    string s;
    cin>>s;
    if(s.size()%2==0)
    {cout<<"NOT POSSIBLE"; return 0;}
    for(int i=0;i<n;i++)
    {
        a[(int)s[i]]++;
    }
    for(int i=(int)'A';i<=(int)'Z';i++)
    {
        if(a[i]%2==1)
        {
            //dif=i;
        }
    }
    string c=s.substr(s.size()/2+1,s.size()/2);
    string d=s.substr(s.size()/2,s.size()/2+1);
    //cout<<c;
    long long st=0;
    //cout<<c<<" "<<d<<"\n";
    string an,ans;
    long long siz=s.size()/2;
    for(int i=0;i<siz+1;i++)
    {
        if(s[i]==c[st])
        {
            an+=s[i];
            st++;
        }
    }
    st=0;
    for(int i=0;i<siz;i++)
    {
        if(s[i]==d[st])
        {
            ans+=s[i];
            st++;
        }
    }
    //cout<<an<<" "<<ans<<" ";
    string em;
    if(ans.size()!=s.size()/2)
    ans=em;
    if(an.size()!=s.size()/2)
    an=em;
    if(ans.size()>0)
    {
        if(an.size()>0)
        {
            if(an==ans)
            cout<<an;
            else
            cout<<"NOT UNIQUE";
        }
        else
        cout<<ans;
    }
    else if(an.size()>0)
    {
        cout<<an;
    }
    else
    cout<<"NOT POSSIBLE";
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...