Submission #1021646

#TimeUsernameProblemLanguageResultExecution timeMemory
1021646idiotcomputerPipes (CEOI15_pipes)C++11
20 / 100
1148 ms65536 KiB
#include <bits/stdc++.h> using namespace std; #define pb push_back #define sz size const int mxN = 1e5; vector<int> adj[mxN]; int d[mxN]; int low[mxN]; void dfs(int c, int depth, int p){ d[c] = depth; low[c] = d[c]; int op = p; for (int i : adj[c]){ if (i == p){p = -1; continue;} if (d[i] != -1){ low[c] = min(low[c],d[i]); continue;} dfs(i,depth+1,c); low[c] = min(low[c], low[i]); } if (low[c] >= depth && op != -1) cout << c+1 << " " << op+1 << '\n'; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n,m; cin >> n >> m; int a,b; for (int i = 0; i < m; i++){ cin >> a >> b; a -= 1; b -= 1; adj[a].pb(b); adj[b].pb(a); } for (int i = 0; i < n; i++) d[i] = -1; for (int i = 0; i < n; i++) if (d[i] == -1) dfs(i,0,-1); return 0; }
#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...