Submission #1252802

#TimeUsernameProblemLanguageResultExecution timeMemory
1252802abcdxyz123World Map (IOI25_worldmap)C++17
15 / 100
16 ms2116 KiB
#include "worldmap" #include<bits/stdc++.h> using namespace std; #define maxn 45 int n; vector<int>adj[maxn]; int color[maxn]; int cur; vector<vector<int>>res; void Fill(int k,vector<int>vec) { for(int i=0;i<=k;i++) { int x=i; int y=k-i; if(x>=2*n||y>=2*n)continue; res[x][y]=vec.back(); if(vec.size()>=2)vec.pop_back(); } } void dfs(int u,int dad) { color[u]=1; Fill(cur++,{u}); vector<int>que; for(int v:adj[u]) { if(v!=dad) { if(color[v]) { que.push_back(v); } else { dfs(v,u); Fill(cur++,{u}); } } } if(que.empty())que.push_back(u); Fill(cur++,que); Fill(cur++,{u}); } vector<vector<int>> create_map(int N,int m,vector<int>u,vector<int>v) { n=N; cur=0; for(int i=1;i<=n;i++) { color[i]=0; adj[i].clear(); } for(int i=0;i<m;i++) { adj[u[i]].push_back(v[i]); adj[v[i]].push_back(u[i]); } res=vector<vector<int>>(2*n,vector<int>(2*n,0)); dfs(1,0); 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...