# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
31800 | 2017-09-09T06:49:44 Z | top34051 | Cezar (COCI16_cezar) | C++14 | 0 ms | 2024 KB |
#include<bits/stdc++.h> using namespace std; int n; bool vis[30]; string s[105], p[105]; vector<int> from[30], to[30]; vector<int> topo; void dfs(int x) { int i; vis[x] = 1; for(i=0;i<from[x].size();i++) if(!vis[from[x][i]]) dfs(from[x][i]); topo.push_back(x); } void dfs2(int x) { int i; vis[x] = 1; for(i=0;i<to[x].size();i++) if(!vis[to[x][i]]) dfs2(to[x][i]); } main() { int i,j,x; scanf("%d",&n); for(i=1;i<=n;i++) cin >> s[i]; for(i=1;i<=n;i++) scanf("%d",&x), p[x] = s[i]; for(x=1;x<n;x++) { i = j = 0; while(i<p[x].size() && j<p[x+1].size()) { if(p[x][i]!=p[x+1][j]) { to[p[x][i]-'a'].push_back(p[x+1][j]-'a'); from[p[x+1][j]-'a'].push_back(p[x][i]-'a'); // printf("%c -> %c\n",p[x][i],p[x+1][j]); break; } i++; j++; } } memset(vis,0,sizeof(vis)); for(x=0;x<26;x++) if(!vis[x]) dfs(x); memset(vis,0,sizeof(vis)); for(i=25;i>=0;i--) { x = topo[i]; if(vis[x]) { printf("%d",1/0); return 0; } dfs2(x); } printf("DA\n"); for(i=0;i<26;i++) printf("%c",topo[i]+'a'); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 2024 KB | Output is correct |
2 | Incorrect | 0 ms | 2024 KB | Output isn't correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 2024 KB | Output is correct |
2 | Incorrect | 0 ms | 2024 KB | Output isn't correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 0 ms | 2024 KB | Execution killed with signal 8 (could be triggered by violating memory limits) |
2 | Halted | 0 ms | 0 KB | - |