| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1356454 | toast12 | Finding Routers (IOI20_routers) | C++20 | 1 ms | 580 KiB |
#include "routers.h"
using namespace std;
vector<int> v;
int query(int x) {
if (v[x] == -1) v[x] = use_detector(x);
return v[x];
}
vector<int> find_routers(int l, int n, int q) {
v.resize(l+1, -1);
vector<int> ans(1);
int prev = 0;
for (int i = 1; i < n; i++) {
int lo = prev, hi = l;
while (lo < hi) {
int mid = (lo+hi)/2;
int res = query(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... | ||||
