# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
290627 | 2020-09-04T08:30:11 Z | davooddkareshki | Pipes (CEOI15_pipes) | C++17 | 2568 ms | 65540 KB |
#include<bits/stdc++.h> using namespace std; //#define int long long #define F first #define S second #define pii pair<int,int> #define mpr make_pair typedef long long ll; const int maxn = 1e5+10; const int mod = 1e9+7; const int inf = 1e9+10; int n, m; vector<int> g[maxn], comp; bool mark[maxn]; int h[maxn], lo[maxn], par[maxn], num[maxn], Root; vector<pii> ans; void dfs(int v) { mark[v] = 1; lo[v] = h[v]; comp.push_back(v); for(auto u : g[v]) if(mark[u] && u != par[v]) lo[v] = min(lo[v],h[u]); for(auto u : g[v]) if(!mark[u]) { h[u] = h[v] + 1; par[u] = v; dfs(u); lo[v] = min(lo[v], lo[u]); } else if(par[u] == v) lo[u] = min(lo[u],h[v]); } signed main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin>> n >> m; for(int i = 1, u, v; i <= m; i++) { cin>> u >> v; g[u].push_back(v); g[v].push_back(u); } for(int i = 1; i <= n; i++) if(!mark[i]) { Root = i; comp.clear(); dfs(i); for(auto v : comp) if(v != Root && lo[v] >= h[v]) ans.push_back({v,par[v]}); } for(auto e : ans) cout<< e.F <<" "<< e.S <<"\n"; } /* 10 11 1 7 1 8 1 6 2 8 6 7 5 8 2 5 2 3 2 4 3 4 10 9 */
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 2688 KB | Output is correct |
2 | Correct | 2 ms | 2560 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 6 ms | 3200 KB | Output is correct |
2 | Correct | 6 ms | 3072 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 140 ms | 10744 KB | Output is correct |
2 | Correct | 132 ms | 10232 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 281 ms | 13940 KB | Output is correct |
2 | Runtime error | 356 ms | 18808 KB | Memory limit exceeded |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 546 ms | 24568 KB | Memory limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 856 ms | 29180 KB | Memory limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 1433 ms | 56948 KB | Memory limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 2025 ms | 65536 KB | Memory limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 2482 ms | 65536 KB | Memory limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 2568 ms | 65540 KB | Execution killed with signal 9 |
2 | Halted | 0 ms | 0 KB | - |