# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1230098 | zerone. | Finding Routers (IOI20_routers) | C++20 | 0 ms | 0 KiB |
#include "routers.h"
#define ll long long
#define en "\n"
#define pb push_back
using namespace std;
vector<ll> find_routers(int l, int n, int q) {
vector<ll> ans;
ans.pb(0);
for(ll i = 1; i < n; ++i){
ll l = ans[i-1]+1;
ll r = n-1;
ll idx = -1;
while(l <= r){
ll mid = (l+r)/2;
ll dist = use_detector(mid);
if(dist > i-1){
r = mid-1;
} else{
idx = mid;
l = mid+1;
}
}
ans.pb(2*idx-ans[i-1]);
}
return ans;
}