| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 986496 | boris_mihov | Island Hopping (JOI24_island) | C++17 | 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 "island.h"
void solve(int n, int L) 
{
    std::vector <int> order(n);
    std::vector <bool> foundParent(n + 1, false);
    for (int i = 1 ; i < n ; ++i)
    {
        order[i] = ask(1, i);
    }   
    foundParent[1] = true;
    for (int i = 1 ; i < n ; ++i)
    {
        if (!foundParent[order[i]])
        {
            for (int idx = 1 ; idx < n ; ++idx)
            {
                int curr = ask(order[i], idx);
                answer(order[i], curr);
                if (foundParent[curr])
                {
                    foundParent[order[i]] = true;
                    break;
                }
                foundParent[curr] = true;
            }
        }
    }
}
