# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
47964 | 2018-05-09T09:12:52 Z | Extazy | Potemkin cycle (CEOI15_indcyc) | C++17 | 26 ms | 2156 KB |
#include <bits/stdc++.h> #define endl '\n' #define prev alkhjgajghgkjagjhk using namespace std; const int N = 1007; int n,m; bool has[N][N]; vector < int > v[N]; vector < int > comp; bool used[N]; int dist[N],prev[N]; void dfs(int node, int chosen) { used[node]=true; if(has[node][chosen]) { comp.push_back(node); return; } for(int i=0;i<(int)(v[node].size());i++) if(!used[v[node][i]]) { dfs(v[node][i],chosen); } } void restore(int from, int to, int chosen) { int i,curr; queue < int > q; for(i=1;i<=n;i++) { used[i]=false; } used[from]=true; dist[from]=0; q.push(from); while(!q.empty()) { curr=q.front(); q.pop(); for(i=0;i<(int)(v[curr].size());i++) if(!used[v[curr][i]] && v[curr][i]!=chosen) { used[v[curr][i]]=true; dist[v[curr][i]]=dist[curr]+1; prev[v[curr][i]]=curr; q.push(v[curr][i]); } } curr=to; while(curr) { printf("%d ", curr); curr=prev[curr]; } printf("%d\n", chosen); } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int i,j,z,t,x,y; scanf("%d %d", &n, &m); for(i=1;i<=m;i++) { scanf("%d %d", &x, &y); has[x][y]=true; has[y][x]=true; v[x].push_back(y); v[y].push_back(x); } for(i=1;i<=n;i++) { has[i][i]=true; for(j=1;j<=n;j++) { used[j]=false; } for(j=1;j<=n;j++) if(!used[j] && i!=j && !has[i][j]) { comp.clear(); dfs(j,i); for(z=0;z<(int)(comp.size());z++) for(t=z+1;t<(int)(comp.size());t++) { if(!has[comp[z]][comp[t]]) { restore(comp[z],comp[t],i); return 0; } } } } printf("no\n"); return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Correct | 2 ms | 416 KB | Output is correct |
4 | Correct | 2 ms | 468 KB | Output is correct |
5 | Correct | 2 ms | 596 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 596 KB | Wrong adjacency |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 596 KB | Wrong adjacency |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 720 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 748 KB | Wrong adjacency |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 7 ms | 972 KB | Output is correct |
2 | Incorrect | 3 ms | 1004 KB | Wrong adjacency |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 3 ms | 1004 KB | Wrong adjacency |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 16 ms | 2156 KB | Wrong adjacency |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 26 ms | 2156 KB | Wrong adjacency |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 23 ms | 2156 KB | Wrong adjacency |
2 | Halted | 0 ms | 0 KB | - |