Submission #552796

#TimeUsernameProblemLanguageResultExecution timeMemory
552796Killer2501Carnival (CEOI14_carnival)C++14
100 / 100
13 ms336 KiB
#include <bits/stdc++.h> #define ll long long #define ld long double #define ull unsigned long long #define pb push_back #define pll pair<int, pii> #define pii pair<int, int> #define fi first #define se second using namespace std; const int N = 2e2+2; const int M = 60; const int mod = 1e9+7; const ll base = 1e6; const ll inf = 1e9; int n, m, b[N], a[N], k, t, d[N], cnt, par[N], f[N]; ll ans; vector<int> adj[N], vi; bool vis[N], ok; set<pii> leaf; int ask() { if(vi.size() == 1)return 1; cout << vi.size() << " "; for(int x: vi)cout << x <<" "; cout << endl; cin >> k; return k; } void sol() { cin >> n; b[1] = 1; a[1] = 1; m = 1; for(int i = 2; i <= n; i ++) { vi.clear(); for(int j = 1; j <= i; j ++)vi.pb(j); b[i] = ask(); if(b[i] > m) { a[i] = ++m; continue; } int l = 1, r = i-1, mid; while(l <= r) { mid = (l+r)>>1; vi.clear(); for(int j = 1; j <= mid; j ++)vi.pb(j); vi.pb(i); if(ask() > b[mid])l = mid+1; else r = mid-1; } a[i] = a[l]; } cout << 0 <<" "; for(int i = 1; i <= n; i ++)cout << a[i] <<" "; cout << endl; } int main() { cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0); #define task "tests" if(fopen(task".inp", "r")) { freopen(task".inp", "r", stdin); freopen(task".out", "w", stdout); } int test = 1; //cin >> test; while(test -- > 0)sol(); return 0; } /* 2 1 6 5 4 3 */

Compilation message (stderr)

carnival.cpp: In function 'int main()':
carnival.cpp:70:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   70 |   freopen(task".inp", "r", stdin);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
carnival.cpp:71:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   71 |   freopen(task".out", "w", stdout);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#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...