| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1356450 | toast12 | Finding Routers (IOI20_routers) | C++20 | 1 ms | 348 KiB |
#include "routers.h"
using namespace std;
vector<int> find_routers(int l, int n, int q) {
vector<int> ans(1);
int prev = 0;
for (int i = 1; i < n; i++) {
int cur = 1;
int x = prev;
while (true) {
x += cur;
int res = use_detector(min(x, l));
if (res == i) break;
cur *= 2;
}
int lo = x-cur, hi = x;
while (lo < hi) {
int mid = (lo+hi)/2;
int res = use_detector(mid);
if (res == i) hi = mid;
else lo = mid+1;
}
int dist = hi-prev;
ans.push_back(prev+2*dist-2);
prev = ans.back();
}
return ans;
}
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
