#include "routers.h"
#include <bits/stdc++.h>
using namespace std;
std::vector<int> find_routers(int l, int n, int q) {
// int idx = use_detector(0);
// std::vector<int> ans;
// for (int i = 0; i < n; i++) {
// ans.push_back(0);
// }
// return ans;
std::vector<int> ans;
vector<int> each_pos(l + 1, -1);
vector<bool> done(l + 1, false);
done[0] = true;
ans.push_back(0);
for(int i=1;i<=l;++i)
{
each_pos[i] = use_detector(i);
}
int prev = 0; bool is_f = true;
for(int i=1;i<l;++i)
{
if(i % 2 == 1) // actually even because 0-indexed
{
if(!done[each_pos[i]] and each_pos[i] == each_pos[i + 1])
{
done[each_pos[i]] = true;
ans.push_back(i + ((i - prev) / 2));
prev = i;
}
}
else
{
if(done[each_pos[i]] and each_pos[i] != each_pos[i + 1])
{
done[each_pos[i + 1]] = true;
ans.push_back((each_pos[i] == 0 ? i * 2 : (i - 1) + ((i - 1) - prev) / 2));
prev = i - 1;
}
}
}
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... |