Submission #856089

#TimeUsernameProblemLanguageResultExecution timeMemory
856089vjudge1Turnir (COCI17_turnir)C++17
100 / 100
259 ms18256 KiB
//author: Ahmet Alp Orakci #include <bits/stdc++.h> using namespace std; using i64 = long long; int cnt = 0; #define ONLINE_JUDGE void solve() { int n; cin >> n; vector <pair <int, int>> vec((1 << n)); for(auto &[i, a] : vec) cin >> i, a = cnt++; sort(vec.begin(), vec.end()); vector <int> ans((1 << n)); for(int i = 0; i < (1 << n); i++) { auto it = upper_bound(vec.begin(), vec.end(), pair <int, int> {vec[i].first, 1E9}); int cnt = it - vec.begin(); //cerr << i << " " << cnt << "\n"; ans[vec[i].second] = n - __lg(cnt); } for(int &i : ans) cout << i << " "; return; } signed main() { #ifndef ONLINE_JUDGE freopen(".in", "r", stdin); freopen(".out", "w", stdout); #endif ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int t = 1; //cin >> t; for(int i = 1; i <= t; i++) { solve(); } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...