Submission #1203499

#TimeUsernameProblemLanguageResultExecution timeMemory
1203499mayacFinding Routers (IOI20_routers)C++20
39 / 100
1 ms328 KiB
#include "routers.h" #include <iostream> #include <vector> using namespace std; std::vector<int> find_routers(int l, int n, int q) { int idx = l, a, cur; vector<int> ans(n, 0),mn(n,0), mx(n,l); for (int i = n - 1; i > 0; i--) { cur = mn[i]; for (int step = (mx[i]-mn[i]+1)/2; step > 0; step /= 2) { cur += step; while (cur > l)cur--; a = use_detector(cur); mx[a] = min(cur,mx[a]); if (a < n - 1)mn[a + 1] = max(mx[a + 1], cur); if (a >= i)cur -= step; if (step > 1)step++; } idx = cur; ans[i] = cur; } for (int i = 1; i < n; i++) { ans[i] = ans[i] * 2 - ans[i - 1]; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...