Submission #1173005

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
11730052025-03-24 16:29:57OI_AccountSwap (BOI16_swap)C++20
100 / 100
264 ms38308 KiB
#include <bits/stdc++.h>
using namespace std;
const int N = 200'000;
int n, a[N + 10];
vector<pair<int, int>> vec[N + 10];
void readInput() {
cin >> n;
for (int i = 1; i <= n; i++)
cin >> a[i];
}
void initVec(int u) {
for (auto [val, id]: vec[u << 1])
vec[u].push_back({val, 0});
for (auto [val, id]: vec[u << 1 | 1])
vec[u].push_back({val, 0});
vec[u].push_back({a[u << 1], 0});
if ((u << 1 | 1) <= n)
vec[u].push_back({a[u << 1 | 1], 0});
sort(vec[u].begin(), vec[u].end());
vec[u].resize(unique(vec[u].begin(), vec[u].end()) - vec[u].begin());
}
int getVec(int u, int x) {
int idx = lower_bound(vec[u].begin(), vec[u].end(), make_pair(x + 1, -1)) - vec[u].begin();
return vec[u][idx - 1].second;
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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...