제출 #64391

#제출 시각아이디문제언어결과실행 시간메모리
64391FedericoS사육제 (CEOI14_carnival)C++14
0 / 100
4 ms684 KiB
#include <iostream>
#include <vector>
#include <utility>
using namespace std;

int N;
vector<int> V;
int res;
int C[105];

bool check(int i, int l, int m){
    cout<<m-l+2<<" ";
    for(int j=l;j<m+1;j++)
        cout<<V[j]+1<<" ";
    cout<<i+1<<endl;
    cin>>res;
    return res==m-l+1;
}

int main(){

    cin>>N;

    for(int i=0;i<N;i++)
        C[i]=-1;

    for(int i=0;i<N;i++){
        cout<<V.size()+1<<" ";
        for(int x:V)
            cout<<x+1<<" ";
        cout<<i+1<<endl;
        cin>>res;
        if(res==V.size()+1){
            V.push_back(i);
            C[i]=V.size()-1;
        }
    }

    for(int i=0;i<N;i++)
        if(C[i]==-1){
            int l=0,r=V.size(),m;
            while(l<r){
                m=(l+r)/2;
                if(check(i,l,m))
                    r=m;
                else l=m+1;
            }
            C[i]=l;
        }


    cout<<0<<" ";
    for(int i=0;i<N;i++)
        cout<<C[i]+1<<" ";
    cout<<endl;

    return 0;

}

컴파일 시 표준 에러 (stderr) 메시지

carnival.cpp: In function 'int main()':
carnival.cpp:33:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(res==V.size()+1){
            ~~~^~~~~~~~~~~~
#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...