제출 #1119290

#제출 시각아이디문제언어결과실행 시간메모리
1119290thangdz2k7도서관 (JOI18_library)C++17
0 / 100
425 ms428 KiB
// author : thembululquaUwU // 3.9.2024 #include <bits/stdc++.h> #include "library.h" #define pb push_back #define fi first #define se second #define endl '\n' using namespace std; using ll = long long; using ii = pair <int, int>; using vi = vector <int>; const int N = 1e5 + 5; const int mod = 1e9 + 7; void maxl(auto &a, auto b) {a = max(a, b);} void minl(auto &a, auto b) {a = min(a, b);} // grader //int n, p[N]; // //int Query(vector <int> qr){ // int ans = 0; // for (int i = 1; i <= n; ++ i) if (qr[p[i]] == 1 && (i == 1 || !qr[p[i - 1]])) ++ ans; // return ans; //} // //void Answer(vector <int> ans){ // for (int f : ans) cout << f << ' '; //} // end void Solve(int n){ vector <int> a(n); iota(a.begin(), a.end(), 0); auto del = [&](int x) -> void { a.erase(a.begin() + x); }; vector <int> qr(n, 1); int st = 0; for (int i = 1; i < n; ++ i){ qr[i] = 0; if (Query(qr) == 1){ st = i; break; } qr[i] = 1; } vector <int> ans = {st}; del(st); for (int loops = 1; loops < n; ++ loops){ int l = 0, r = a.size() - 1; //, g = 0; while (l <= r){ int mid = l + r >> 1; qr.assign(n, 0); for (int i = 0; i <= mid; ++ i) qr[a[i]] = 1; int res = Query(qr); qr[ans.back()] = 1; if (res == Query(qr)) r = mid; else l = mid + 1; } ans.push_back(a[l]); del(l); } for (int &f : ans) f ++; Answer(ans); } //void solve(){ // cin >> n; // for (int i = 1; i <= n; ++ i) cin >> p[i], p[i] --; // Solve(n); //} // //int main(){ // if (fopen("Library.inp", "r")){ // freopen("Library.inp", "r", stdin); // freopen("Library.out", "w", stdout); // } // ios_base::sync_with_stdio(0); // cin.tie(0); cout.tie(0); // // int t = 1; // cin >> t; // while (t --) solve(); // return 0; //}

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

library.cpp:19:11: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   19 | void maxl(auto &a, auto b) {a = max(a, b);}
      |           ^~~~
library.cpp:19:20: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   19 | void maxl(auto &a, auto b) {a = max(a, b);}
      |                    ^~~~
library.cpp:20:11: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   20 | void minl(auto &a, auto b) {a = min(a, b);}
      |           ^~~~
library.cpp:20:20: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   20 | void minl(auto &a, auto b) {a = min(a, b);}
      |                    ^~~~
library.cpp: In function 'void Solve(int)':
library.cpp:62:25: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   62 |             int mid = l + r >> 1;
      |                       ~~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...