Submission #244510

#TimeUsernameProblemLanguageResultExecution timeMemory
244510dantoh000Pipes (CEOI15_pipes)C++14
20 / 100
1506 ms65540 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int,int> ii; int n,m; unordered_map<int,bool> M[30005]; int num[30005]; int p[30005]; int low[30005]; int ct = 1; void dfs(int u){ low[u] = num[u] = ct++; for (auto v : M[u]){ if (num[v.first] == 0){ p[v.first] = u; dfs(v.first); if (low[v.first] > num[u]){ if (v.second == 0){ printf("%d %d\n",u,v); } } low[u] = min(low[u],low[v.first]); } else if (v.first != p[u]){ low[u] = min(low[u],num[v.first]); } } } int main(){ scanf("%d%d",&n,&m); for (int i = 0; i < m; i++){ int u,v; scanf("%d%d",&u,&v); if (u > v) swap(u,v); if (M[u].count(v)){ M[u][v] = 1; } else{ M[u][v] = 0; } } for (int u = 1; u <= n; u++){ for (auto v : M[u]){ M[v.first][u] = v.second; } } for (int i = 1; i <= n; i++){ if (num[i] == 0){ dfs(i); } } }

Compilation message (stderr)

pipes.cpp: In function 'void dfs(int)':
pipes.cpp:18:41: warning: format '%d' expects argument of type 'int', but argument 3 has type 'std::pair<const int, bool>' [-Wformat=]
                     printf("%d %d\n",u,v);
                                         ^
pipes.cpp: In function 'int main()':
pipes.cpp:29:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d%d",&n,&m);
     ~~~~~^~~~~~~~~~~~~~
pipes.cpp:32: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...