Submission #1235628

#TimeUsernameProblemLanguageResultExecution timeMemory
1235628Ghulam_JunaidThousands Islands (IOI22_islands)C++20
1.75 / 100
1096 ms10600 KiB
#include <bits/stdc++.h> #include "islands.h" // #include "grader.cpp" using namespace std; const int N = 2e5 + 10; int n, m, vis[N], mark[N]; vector<int> g[N], V; bool dfs(int v, int day){ if (v == 0) return 1; vis[v] = day; bool ans = 0; for (int e : g[v]){ int u = V[e]; if (vis[u] == day and !mark[u]) return 1; ans |= dfs(u, day); } mark[v] = 1; return ans; } variant<bool, vector<int>> find_journey(int N, int M, vector<int> U, vector<int> vv) { V = vv; n = N, m = M; for (int i = 0; i < m; i ++){ g[U[i]].push_back(i); } int day = 0, ans = 0; for (int e : g[0]){ memset(mark, 0, sizeof mark); day++; ans += dfs(V[e], day); } if (ans >= 2) return true; return false; if (N == 4) { return vector<int>({0, 1, 2, 4, 0, 3, 2, 1, 4, 3}); } return false; }
#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...