Submission #1257741

#TimeUsernameProblemLanguageResultExecution timeMemory
1257741mkkkkkkkkWorld Map (IOI25_worldmap)C++17
72 / 100
82 ms12616 KiB
#include "worldmap.h" #include <bits/stdc++.h> using namespace std; void dfs(int i,vector<vector<int>>& vec,int& j,vector<int> adj[],bool vis[]) { vis[i]=true; for(int k=0;k<vec.size();k++) { vec[j][k]=i; } j++; int jj=0; for(auto it : adj[i]) { vec[j][jj]=it; jj++; vec[j][jj]=i; jj++; } for(;jj<vec.size();jj++) vec[j][jj]=i; j++; for(auto it : adj[i]) { if(vis[it]==false) { for(int k=0;k<vec.size();k++) { vec[j][k]=i; } j++; dfs(it,vec,j,adj,vis); } } if(i!=1) { for(int k=0;k<vec.size();k++) { vec[j][k]=i; } j++; } } vector<vector<int>> create_map(int N, int M, vector<int> A, vector<int> B) { vector<int> adj[100000]; bool vis[1000000]={}; int j=0; vector<vector<int>> vec; vector<int> temp; for(int i=0;i<N*2+2*(N-1);i++) { temp.push_back(-1); } for(int i=0;i<N*2+2*(N-1);i++) { vec.push_back(temp); } for(int i=0;i<A.size();i++) { int a=A[i],b=B[i]; adj[a].push_back(b); adj[b].push_back(a); } dfs(1,vec,j,adj,vis); return vec; }
#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...