Submission #91935

#TimeUsernameProblemLanguageResultExecution timeMemory
91935faustaadpCarnival (CEOI14_carnival)C++17
100 / 100
29 ms504 KiB
#include<bits/stdc++.h>
#define ll long long
#define pb push_back
#define mp make_pair
#define fi first
#define se second
using namespace std;
ll n,i,a[155],te;
ll tanya(ll aa,ll bb)
{
    cout<<bb-aa+1<<" ";
    ll ii;
    for(ii=aa;ii<=bb;ii++)
        if(ii<bb)cout<<ii<<" ";
        else cout<<ii<<endl;
    ll H;
    cin>>H;
    return H;
}
ll tanya2(ll cc,ll aa,ll bb)
{
    cout<<bb-aa+2<<" "<<cc<<" ";
    ll ii;
    for(ii=aa;ii<=bb;ii++)
        if(ii<bb)cout<<ii<<" ";
        else cout<<ii<<endl;
    ll H;
    cin>>H;
    return H;
}
int main()
{
    //ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    cin>>n;
    for(i=1;i<=n;i++)
    {
        if(a[i]==0)a[i]=++te;
        ll L=i+1;
        ll R=n;
        ll C;
        while(L<R)
        {
            C=(L+R)/2;
            if(tanya(L,C)==tanya2(i,L,C))R=C;
            else L=C+1;
        }
        if(L>R)continue;
        if(tanya(L,R)==tanya2(i,L,R))a[L]=a[i];
    }
    cout<<0<<" ";
    for(i=1;i<=n;i++)
        if(i<n)cout<<a[i]<<" ";
        else cout<<a[n]<<endl;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...