제출 #1180848

#제출 시각아이디문제언어결과실행 시간메모리
1180848raphaelp사육제 (CEOI14_carnival)C++20
100 / 100
2 ms408 KiB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    int N;
    cin >> N;
    vector<int> ans(N + 1), types(1, 1);
    ans[1] = 1;
    for (int i = 2; i <= N; i++)
    {
        cout << types.size() + 1 << ' ' << i << ' ';
        for (int j = 0; j < types.size(); j++)
            cout << types[j] << ' ';
        cout << endl;
        int res = 0;
        cin >> res;
        if (res != types.size())
        {
            types.push_back(i);
            ans[i] = types.size();
            continue;
        }
        int L = 0, R = types.size();
        while (L + 1 != R)
        {
            int m = (L + R) / 2;
            cout << m - L + 1 << ' ' << i << ' ';
            for (int j = L; j < m; j++)
                cout << types[j] << ' ';
            cout << endl;
            cin >> res;
            if (res == m - L)
                R = m;
            else
                L = m;
        }
        ans[i] = L + 1;
    }
    cout << '0' << ' ';
    for (int i = 1; i <= N; i++)
        cout << ans[i] << ' ';
    cout << 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...