# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
582032 | 2022-06-23T09:48:31 Z | YaserFaisal | 도서관 (JOI18_library) | C++14 | 0 ms | 0 KB |
//#include "library.h" #include <bits/stdc++.h> using namespace std; void Solve(int n) { vector < int > ans , v(n,0) , cur(n,0) ; ans.push_back(0) ; int aim = 0 ; for ( int i = 0 ; i < n ; i++ ) { int sum = 0 ; for ( int j = 0 ; j < n ; j++ ) { cur = v ; cur[i] = cur[j] = 1 ; if ( Query(cur) == 1 ) sum++ ; } if ( sum == 1 ) { aim = i+1 ; break ; } } ans.push_back(aim) ; for ( int j = 1 ; j < n ; j++ ) { v[ans[ans.size()-1]-1] = 1 ; for ( int i = 0 ; i < n ; i++ ) { cur = v ; cur[i] = 1 ; if ( Query(cur) == 1 ) { ans.push_back(i+1) ; break ; } } } Answer(ans) ; } // Query(x) , x : where x is a vector with 0 or 1 // Answer(x) . x : where x is a vector with number from 1 -> n