Submission #1286250

#TimeUsernameProblemLanguageResultExecution timeMemory
1286250LuvidiWorld Map (IOI25_worldmap)C++20
15 / 100
54 ms7364 KiB
#include "worldmap.h" #include <bits/stdc++.h> using namespace std; #define pb push_back #define pii pair<int,int> vector<int> ad[41],st; vector<pii> bs; bool vs[41]; void dfs(int v){ vs[v]=1; st.pb(v); for(int u:ad[v]){ if(vs[u]){ if(u<v){ // bs.pb({u,v}); } }else{ dfs(u); st.pb(v); } } } std::vector<std::vector<int>> create_map(int n, int m, std::vector<int> a, std::vector<int> b) { for(int i=1;i<=n;i++){ ad[i].clear(); vs[i]=0; } st.clear(); for(int i=0;i<m;i++){ ad[a[i]].pb(b[i]); ad[b[i]].pb(a[i]); } bs.clear(); dfs(1); vector<int> t; int id[n+1],rm[n+1]; memset(id,-1,sizeof(id)); memset(rm,0,sizeof(rm)); for(int i:st){ t.pb(i); if(id[i]==-1){ id[i]=t.size(); t.pb(i); t.pb(i); } } st=t; int sz=st.size(); vector<vector<int>> ans(sz,vector<int>(sz)); for(int i=0;i<sz;i++){ for(int j=0;j<sz;j++)ans[i][j]=st[j]; } // for(auto[x,y]:bs){ // ans[rm[x]++][id[x]]=y; // } return ans; }
#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...