# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
154222 | 2019-09-19T11:34:37 Z | arnold518 | Pipes (CEOI15_pipes) | C++14 | 3139 ms | 65540 KB |
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int, int> pii; typedef pair<ll, ll> pll; const int MAXN = 1e5; struct UF { int par[MAXN+10]; UF() { for(int i=0; i<=MAXN; i++) par[i]=i; } int Find(int x) { if(x==par[x]) return x; return par[x]=Find(par[x]); } void Union(int x, int y) { x=Find(x); y=Find(y); par[x]=y; } }; UF uf1, uf2; int N, M; vector<int> adj[MAXN+10]; int idx[MAXN+10], cnt=1; int dfs(int now, int bef) { idx[now]=cnt++; int ret=idx[now]; for(int nxt : adj[now]) { if(nxt==bef) continue; if(idx[nxt]!=0) ret=min(ret, idx[nxt]); else { int t=dfs(nxt, now); ret=min(ret, t); if(t>idx[now]) printf("%d %d\n", now, nxt); } } return ret; } int main() { int i, j; scanf("%d%d", &N, &M); while(M--) { int u, v; scanf("%d%d", &u, &v); adj[u].push_back(v); adj[v].push_back(u); //if(uf1.Find(u)!=uf1.Find(v)) uf1.Union(u, v), adj[u].push_back(v), adj[v].push_back(u); //else if(uf2.Find(u)!=uf2.Find(v)) uf2.Union(u, v), adj[u].push_back(v), adj[v].push_back(u); } for(i=1; i<=N; i++) if(idx[i]==0) dfs(i, i); }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 3448 KB | Output is correct |
2 | Incorrect | 5 ms | 3448 KB | Wrong number of edges |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 9 ms | 3960 KB | Output is correct |
2 | Incorrect | 9 ms | 3704 KB | Wrong number of edges |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 180 ms | 11648 KB | Output is correct |
2 | Correct | 174 ms | 10872 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 343 ms | 14932 KB | Output is correct |
2 | Runtime error | 404 ms | 30604 KB | Memory limit exceeded (if you are sure your verdict is not MLE, please contact us) |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Runtime error | 625 ms | 25832 KB | Memory limit exceeded (if you are sure your verdict is not MLE, please contact us) |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Runtime error | 1084 ms | 30932 KB | Memory limit exceeded (if you are sure your verdict is not MLE, please contact us) |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Runtime error | 1726 ms | 52532 KB | Memory limit exceeded (if you are sure your verdict is not MLE, please contact us) |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Runtime error | 2282 ms | 65536 KB | Execution killed with signal 9 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Runtime error | 2835 ms | 65540 KB | Execution killed with signal 9 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Runtime error | 3139 ms | 65540 KB | Execution killed with signal 9 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |