Submission #1069689

#TimeUsernameProblemLanguageResultExecution timeMemory
1069689Muhammad_AneeqLongest Trip (IOI23_longesttrip)C++17
40 / 100
968 ms1700 KiB
#include <vector> #include <set> #include "longesttrip.h" #include <bitset> using namespace std; int const MAXN=256; vector<int>nei[MAXN]={}; vector<int>ans; vector<int>cur; bitset<MAXN>vis; void dfs(int u,int p=-1) { vis[u]=1; cur.push_back(u); bool w=0; for (auto i:nei[u]) { if (vis[i]) continue; w=1; dfs(i,u); } if (w==0) { if (cur.size()>ans.size()) ans=cur; } cur.pop_back(); } vector<int> longest_trip(int N, int D) { ans.clear(); cur.clear(); for (int i=0;i<N;i++) nei[i].clear(); for (int i=0;i<N;i++) for (int j=i+1;j<N;j++) if (are_connected({i},{j})) nei[i].push_back(j),nei[j].push_back(i); for (int i=0;i<N;i++) { for (int j=0;j<N;j++) vis[j]=0; dfs(i); } 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...