| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 1230083 | warrenn | Finding Routers (IOI20_routers) | C++20 | 0 ms | 0 KiB | 
#include "routers.h"
using namespace std;
#define ll long long 
vector<ll> find_routers(ll l, ll n, ll qu) {
    pair<ll,ll>simpan[n+1];
    ll lst=1;
    for(ll q=0;q<=n;q++){
      ll l=lst;
      ll r=n;
      ll hmm=-1;
      while(l<=r){
        ll mid=(l+r)/2;
        ll idx=use_detector(mid);
        if(idx!=q){
          r=mid-1;
        }
        else{
          l=mid+1;
          hmm=mid;
        }
      }
      simpan[q]={lst,hmm};
      lst=hmm+1;
    }
    vector<ll>ans;
    ans.push_back(0);
    for(ll q=1;q<=n;q++){
      pair<ll,ll>prev=simpan[q-1];
      pair<ll,ll>cur=simpan[q];
      ll sblm=ans.back();
      ll hihi=cur.first-sblm+prev.second-1;
      ans.push_back(hihi);
    }
    return ans;
  }
