Submission #1031578

#TimeUsernameProblemLanguageResultExecution timeMemory
1031578aaaaaarrozLongest Trip (IOI23_longesttrip)C++17
60 / 100
232 ms600 KiB
#include"longesttrip.h" #include<iostream> using namespace std; int n; vector<int>longest_trip(int N,int D){ n=N; vector<int>res={0}; vector<bool>vis(n); vis[0]=true; while(true){ int node=res.back(); for(int ne=0;ne<n;ne++){ if(!vis[ne]&&are_connected({node},{ne})){ res.push_back(ne); break; } } vis[res.back()]=true; if(node==res.back()) break; } vector<int>res2; for(int j=0;j<n;j++) if(!vis[j]) res2.push_back(j); if(res2.size()){ for(int i=0;i<(int)res.size();i++){ if(are_connected(res2,{res[i]})){ for(int ne=0;ne<n;ne++){ if(!vis[ne]&&are_connected({ne},{res[i]})){ vector<int>res2; for(int j=0;j<n;j++) if(!vis[j]&&j!=ne) res2.push_back(j); res2.push_back(ne); for(int j=i;j<(int)res.size();j++) res2.push_back(res[j]); for(int j=0;j<i;j++) res2.push_back(res[j]); return res2; } } } } } if(res.size()>res2.size()){ return res; } else{ return res2; } }
#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...