Submission #139479

#TimeUsernameProblemLanguageResultExecution timeMemory
139479MohamedAhmed04Library (JOI18_library)C++14
19 / 100
3101 ms376 KiB
#include <bits/stdc++.h> #include "library.h" //#include "grader.cpp" using namespace std; int l[2005] , r[2005] , marked[2005]; void Solve(int N) { memset(marked , 0 , sizeof(marked)) ; memset(l , -1 , sizeof(l)) ; memset(r , -1 , sizeof(r)) ; vector<int> M(N); for(int i = 0 ; i < N ; ++i) M[i] = 0 ; for(int i = 0 ; i < N ; ++i) { for(int j = i+1 ; j < N ; ++j) { M[i] = 1 ; M[j] = 1 ; int x = Query(M) ; M[i] = 0 ; M[j] = 0 ; if(x == 1) { if(l[i] == -1) l[i] = j ; else r[i] = j ; if(l[j] == -1) l[j] = i ; else r[j] = i ; } } } vector<int>res(N) ; int nxt = -1 ; for(int i = 0 ; i < N ; ++i) { if(r[i] == -1) { nxt = i ; break ; } } res[0] = nxt + 1 ; marked[nxt] = 1 ; nxt = l[nxt] ; for(int i = 1 ; i < N ; ++i) { res[i] = nxt+1 ; marked[nxt] = 1 ; if(marked[l[nxt]]) nxt = r[nxt] ; else nxt = l[nxt] ; } Answer(res) ; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...