Submission #44771

#TimeUsernameProblemLanguageResultExecution timeMemory
44771RayaBurong25_1Potemkin cycle (CEOI15_indcyc)C++17
50 / 100
1083 ms1568 KiB
#include <stdio.h> #include <vector> std::vector<int> AdjList[1005]; std::vector<int> Path; std::vector<int> Ans; int Vis[1005]; void dfs(int r, int u, int pa) { if (Ans.size() > 0) return; Vis[u] = 1; Path.push_back(u); int i, v, s = AdjList[u].size(); int ok = Path.size() >= 4, toRoot = 0; for (i = 0; i < s; i++) { v = AdjList[u][i]; if (Vis[v] && v != pa) { if (v == r && Path.size() >= 4) { toRoot = 1; // Ans = Path; } else { ok = 0; Path.pop_back(); Vis[u] = 0; return; } } } if (ok && toRoot) { Ans = Path; return; } for (i = 0; i < s; i++) { v = AdjList[u][i]; if (!Vis[v]) { dfs(r, v, u); if (Ans.size() > 0) return; } } Path.pop_back(); Vis[u] = 0; } int main() { int N, R; scanf("%d %d", &N, &R); int i, u, v; for (i = 0; i < R; i++) { scanf("%d %d", &u, &v); AdjList[u].push_back(v); AdjList[v].push_back(u); } for (i = 1; i <= N; i++) { dfs(i, i, 0); } if (Ans.size() > 0) { for (i = 0; i < Ans.size(); i++) printf("%d ", Ans[i]); } else printf("no"); }

Compilation message (stderr)

indcyc.cpp: In function 'int main()':
indcyc.cpp:69:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (i = 0; i < Ans.size(); i++)
                     ~~^~~~~~~~~~~~
indcyc.cpp:55:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %d", &N, &R);
     ~~~~~^~~~~~~~~~~~~~~~~
indcyc.cpp:59:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d %d", &u, &v);
         ~~~~~^~~~~~~~~~~~~~~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...