# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
65511 | 2018-08-07T19:49:21 Z | 3zp | Potemkin cycle (CEOI15_indcyc) | C++14 | 1000 ms | 8256 KB |
#include<bits/stdc++.h> using namespace std; vector<int> c,C, v[100009]; int n, m; stack<int> S; int f[1009][1009]; int F[100009], P[100009]; int G[100009]; int a[200009], b[200009]; void dfs(int x){ F[x] = 1; c.push_back(x); for(int i = 0; i < v[x].size(); i++) if(!F[v[x][i]]) dfs(v[x][i]); } void dfs1(int x, int en){ F[x] = 1; S.push(x); if(x == en){ while(S.size()) { C.push_back(S.top()); S.pop(); } return; } for(int i = 0; i < v[x].size(); i++) if(!F[v[x][i]]) dfs1(v[x][i], en); S.pop(); } void fnd(int x, int y, int z){ for(int i = 0; i <= n; i++) F[i] = 1; for(int i = 0; i < c.size(); i++) F[c[i]] = 0; F[x] = 0; F[y] = 0; F[z] = 0; /* dfs1(y, z); for(int i = 0; i < C.size(); i++) P[C[i]] = i; int X = 0; while(1){ int k = C[X], m1 = k, m2 = X; cout << k<<" "; if(X == C.size() - 1) break; for(int i = 0; i < v[k].size(); i++){ int p = v[k][i]; if(P[p] > m2){ m2 = P[p]; m1 = p; } } X = m2; } cout << x << endl;*/ } main(){ cin >> n >> m; for(int i = 1; i <= m; i++){ scanf("%d%d",&a[i],&b[i]); f[a[i]][b[i]] = 1; f[b[i]][a[i]] = 1; } for(int i = 1; i <= n; i++){ for(int j = 1; j <= n; j++) F[j] = 0, v[j].clear(); F[i] = 1; for(int j = 1; j <= m; j++){ int x = a[j], y = b[j]; if(x == i){ F[y] = 2; continue; } if(y == i){ F[x] = 2; continue; } if(f[i][x] && f[i][y]) continue; v[x].push_back(y); v[y].push_back(x); } for(int j = 1; j <= n; j++){ if(!F[j]){ c.clear(); dfs(j); vector<int> g; for(int k = 0; k < c.size(); k++){ for(int t = 0; t < v[c[k]].size(); t++){ int x = v[c[k]][t]; if(G[x] == 0 && F[x] == 2){ g.push_back(x); G[x] = 1; } } } for(int i = 0; i < g.size(); i++) G[g[i]] = 0; for(int i1 = 0; i1 < g.size(); i1++){ for(int j = i1 + 1; j < g.size(); j++){ if(f[g[i1]][g[j]]) continue; fnd(i, g[i1], g[j]); return 0; } } } } } cout<<"no"<<endl; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 2680 KB | Too short sequence |
2 | Correct | 4 ms | 2832 KB | Output is correct |
3 | Correct | 4 ms | 2892 KB | Output is correct |
4 | Correct | 4 ms | 2892 KB | Output is correct |
5 | Correct | 4 ms | 2892 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 2892 KB | Too short sequence |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 2892 KB | Too short sequence |
2 | Correct | 4 ms | 2892 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 3240 KB | Too short sequence |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 3240 KB | Too short sequence |
2 | Correct | 6 ms | 3264 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 21 ms | 4160 KB | Output is correct |
2 | Correct | 6 ms | 4160 KB | Too short sequence |
3 | Correct | 8 ms | 4160 KB | Too short sequence |
4 | Correct | 31 ms | 4288 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 7 ms | 4288 KB | Too short sequence |
2 | Correct | 26 ms | 4288 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 28 ms | 7744 KB | Too short sequence |
2 | Correct | 18 ms | 7744 KB | Too short sequence |
3 | Execution timed out | 1060 ms | 7824 KB | Time limit exceeded |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 21 ms | 7824 KB | Too short sequence |
2 | Correct | 545 ms | 7824 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 36 ms | 7824 KB | Too short sequence |
2 | Correct | 123 ms | 7824 KB | Output is correct |
3 | Correct | 63 ms | 8172 KB | Too short sequence |
4 | Execution timed out | 1074 ms | 8256 KB | Time limit exceeded |