Submission #996847

#TimeUsernameProblemLanguageResultExecution timeMemory
996847MilosMilutinovicIsland Hopping (JOI24_island)C++17
100 / 100
7 ms680 KiB
#include "island.h" #include <bits/stdc++.h> using namespace std; void solve(int n, int l) { vector<int> order(1, 1); for (int i = 1; i < n; i++) { order.push_back(query(1, i)); } vector<int> pos(n + 1); for (int i = 0; i < (int) order.size(); i++) { pos[order[i]] = i; } vector<int> pr(n + 1, -1); for (int b = 1; b < (int) order.size(); b++) { int i = order[b]; if (pr[i] != -1) { continue; } int ptr = 1; while (true) { int j = query(i, ptr); ptr += 1; if (pos[j] > pos[i]) { pr[j] = i; } else { pr[i] = j; break; } } } for (int i = 2; i <= n; i++) { answer(i, pr[i]); } }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...