#include <iostream>
#include <vector>
#include "routers.h"
using namespace std;
#define pb push_back
std::vector<int> find_routers(int l, int n, int q) {
    cin >> l >> n >> q;
    vector<int> p;
    p.pb(0);
    for (int i = 1; i < n; i++){
        int lo = p[i-1]+1;
        int hi = l;
        int ans = -1;
        bool ok = 0;
        while (lo <= hi){
            int mid = (lo+hi);
            if (ok) mid /= 2;
            else mid /= 3;
            int ret = use_detector(mid);
            if (ret > i){
                hi = mid-1;
            } else {
                ok = 1;
                if (ret == i){
                  hi = mid-1;
                } else {
                  ans = mid;
                  lo = mid+1;
                }
            }
        }
        int x;
        if (ans == -1) x = p[i-1]+1;
        else {
          ans -= p[i-1];
          x = 2*ans+p[i-1];
        }
        p.pb(x);
    }
    vector<int> ans;
    for (int i : p) ans.pb(i);
    return ans;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |