# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
381073 | BlancaHM | Finding Routers (IOI20_routers) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
#include <vector>
using namespace std;
vector<int> find_routers(int l, int n, int q) {
vector<int> positions(n, -1);
// Vamos buscando los routers uno a uno
positions[0] = 0;
if (l&1)
l--;
int lo, hi, mid, k;
for (int i = 1; i < n; i++) {
lo = positions[i-1] + 2;
hi = l;
k = lo;
while(lo <= hi) {
mid = lo + (hi-lo)/2;
if (use_detector(mid) == i-1) {
k = mid;
lo = mid+1;
} else hi = mid-1;
}
positions[i] = k;
}
return positions;
}