Submission #1136766

#TimeUsernameProblemLanguageResultExecution timeMemory
1136766onlk97Island Hopping (JOI24_island)C++20
100 / 100
2 ms408 KiB
#include "island.h"
#include <bits/stdc++.h>
using namespace std;
void solve(int N,int L){
    int a[N+1];
    a[1]=1;
    for (int i=2; i<=N; i++) a[i]=query(1,i-1);
    int pos[N+1];
    for (int i=1; i<=N; i++) pos[a[i]]=i;
    int pa[N+1];
    for (int i=1; i<=N; i++) pa[i]=0;
    for (int i=2; i<=N; i++){
        int u=a[i];
        if (pa[u]) continue;
        for (int j=1; ; j++){
            int t=query(u,j);
            if (pos[t]<pos[u]){
                pa[u]=t;
                break;
            }
            pa[t]=u;
        }
    }
    for (int i=2; i<=N; i++) answer(pa[i],i); 
}
#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...