Submission #1262765

#TimeUsernameProblemLanguageResultExecution timeMemory
1262765vtnooWorld Map (IOI25_worldmap)C++20
0 / 100
1 ms832 KiB
#include <bits/stdc++.h> using namespace std; const int K=240; vector<vector<int>> adj, g; int j=0; void dfs(int u, int p){ for(int i=0;i<K;i++){ g[i][j]=u; } j++; for(auto v:adj[u]){ if(v==p)continue; dfs(v, u); for(int i=0;i<K;i++){ g[i][j]=u; } j++; } } std::vector<std::vector<int>> create_map(int N, int M, std::vector<int> A, std::vector<int> B){ g.resize(K, vector<int> (K, -1)); adj.resize(N+1); for(int i=0;i<M;i++){ adj[A[i]].push_back(B[i]); adj[B[i]].push_back(A[i]); } dfs(1, 1); int lim=0; for(int i=0;i<K;i++){ for(int j0=0;j0<K;j0++){ if(g[i][j0]==-1){ lim=j0; break; } } if(lim)break; } lim--; vector<vector<int>> res(lim, vector<int>(lim)); for(int i=0;i<lim;i++){ for(int j=0;j<lim;j++){ res[i][j]=g[i][j]; } } return res; }
#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...