제출 #918192

#제출 시각아이디문제언어결과실행 시간메모리
918192AtabayRajabli사육제 (CEOI14_carnival)C++17
0 / 100
2 ms344 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace __gnu_pbds; // author : a1abay // (a / b) % c = (a * b ^ (mod - 2)) % c; #define pb push_back #define pii pair<int, int> #define pll pair<ll, ll> #define all(v) v.begin(), v.end() #define whole(a) a+1, a+1+n #define se second #define fi first #define int ll #define print(k) cerr << "Ans : "; cout << k << endl; #define ins insert #define bpc __builtin_popcountll #define skip continue #define endll '\n' #define gcd(a, b) __gcd(a, b) #define lcm(a, b) (a*b / (__gcd(a, b))) #define mpr make_pair #define ordered_set tree<int, null_type,less<int>, rb_tree_tag,tree_order_statistics_node_update> typedef long long ll; typedef unsigned long long ull; typedef long double ld; const int sz = 5e5 + 5; using namespace std; void open(string s, string f) { freopen((s + ".txt").c_str(), "r", stdin); freopen((f + ".txt").c_str(), "w", stdout); } const int mod = 1e9 + 7; int P = 37; int n; void solve() { cin >> n; vector<int> v; int ans[n + 1] = {0}; ans[1] = 1; v.pb(1); int last = 1, ind = 2; for(int i = 2; i <= n; i++) { v.pb(ind); for(int j : v)cout << j << " "; cout << endl; int cnt; cin >> cnt; if(cnt == last + 1) { ans[i] = ind; last = cnt; ind++; } else { v.pop_back(); int l = 0, r = v.size() - 1; while (l <= r) { int mid = (l + r) / 2; for(int j = l; j <= mid; j++)cout << v[j] << " "; cout << ind << endl; int cnt; cin >> cnt; if(cnt == mid - l + 1 + 1)l = mid + 1; else r = mid - 1; } ans[i] = v[r + 1]; ind++; } } map<int, int> c; for(int i = 1; i<= n; i++)c[ans[i]]; int cnt = 1; for(pii p : c) { c[p.fi] = cnt++; } cout << 0 << " "; for(int i = 1; i <= n; i++)cout << c[ans[i]] << " "; cout << endl; } signed main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); // open("in", "out"); int t = 1; // cin >> t; while(t--) { solve(); } return 0; }

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

carnival.cpp: In function 'void open(std::string, std::string)':
carnival.cpp:35:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   35 |     freopen((s + ".txt").c_str(), "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
carnival.cpp:36:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   36 |     freopen((f + ".txt").c_str(), "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...