Submission #1199316

#TimeUsernameProblemLanguageResultExecution timeMemory
1199316raphaelpmedians (balkan11_medians)C++20
10 / 100
29 ms3772 KiB
#include <bits/stdc++.h> using namespace std; int main() { int N; cin >> N; vector<int> Tab(N), used(2 * N); vector<int> ans; int L = 1, R = 2 * N - 1; for (int i = 0; i < N; i++) { while (used[L]) L++; while (used[R]) R--; cin >> Tab[i]; if (i == 0) { ans.push_back(Tab[i]); used[Tab[i]] = 1; continue; } if (Tab[i] == Tab[i - 1]) { ans.push_back(L); ans.push_back(R); used[L] = used[R] = 1; continue; } if (Tab[i] > Tab[i] - 1) { ans.push_back(R); used[R] = 1; while (used[R]) R--; } else { ans.push_back(L); used[L] = 1; while (used[L]) L++; } if (used[Tab[i]] == 0) { ans.push_back(Tab[i]); used[Tab[i]] = 1; } else { if (Tab[i] > Tab[i] - 1) ans.push_back(R), used[R] = 1; else ans.push_back(L), used[L] = 1; } } for (int i = 0; i < 2 * N - 1; i++) cout << ans[i] << ' '; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...