제출 #1256444

#제출 시각아이디문제언어결과실행 시간메모리
1256444keremIsland Hopping (JOI24_island)C++20
35 / 100
3 ms456 KiB
#include "island.h"
#include <bits/stdc++.h>
using namespace std;
#define pb push_back


int vis[305];
vector<int> g[305];

void visit(int x,int ata){
	vis[x]=1;
	for(auto i:g[x])
		if(i!=ata)
			visit(i,x);
}
void dfs(int x,int ata){
	int i=0;
	for(;i<g[x].size();i++)
		if(g[x][i]!=ata)
			dfs(g[x][i],x);
	int t=0,j=2;
	while(!vis[t]){
		t=query(x,j++);
		if(vis[t]) break;
		answer(x,t);
		visit(t,0);
		g[x].pb(t);
		g[t].pb(x);
	}
	for(;i<g[x].size();i++)
		if(g[x][i]!=ata)
			dfs(g[x][i],x);
}
void solve(int N, int L) {
	for(int i=1;i<=N;i++){
		int t=query(i,1);
		if(t>i || t<i && g[t][0]!=i){
			answer(i,t);
			g[i].pb(t);
			g[t].pb(i);
		}
	}
	visit(1,0);
	dfs(1,0);
}
#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...