Submission #1157583

#TimeUsernameProblemLanguageResultExecution timeMemory
115758312345678Island Hopping (JOI24_island)C++20
2 / 100
0 ms396 KiB
#include "island.h"

const int nx=305;

int dsu[nx];

int find(int x)
{
    if (dsu[x]==x) return x;
    return dsu[x]=find(dsu[x]);
}

void solve(int N, int L) {
    for (int i=1; i<=N; i++) dsu[i]=i;
    for (int i=1; i<N; i++)
    {
        auto u=query(1, i);
        if (find(u)==find(1)) continue;
        int cnt=1;
        while (1)
        {
            auto v=query(u, cnt);
            answer(u, v);
            dsu[find(u)]=find(v);
            if (find(1)==find(u)) break;
        }
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...