# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
934440 | 2024-02-27T10:23:39 Z | bashNewbie | Type Printer (IOI08_printer) | C++17 | 2 ms | 1780 KB |
#include <iostream> #include <vector> #include <algorithm> #include <string> using namespace std; #define fast_io ios::sync_with_stdio(0), cin.tie(0) const int N = 5e3+7, K = 26; int adj[N][K+1], len; string ms, ret; inline void pr(char c) { ret += c; } inline void pr(int c) { ret += c+'a'; } void add(string& s) { int x = 0; for(char ch: s) { int c = ch-'a', y = adj[x][c]; if(!y) adj[x][c] = ++len; x = adj[x][c]; } adj[x][K] = 1; } void dfs(int x, int in, int d) { int c = in && d < (int)ms.size()? ms[d]-'a': -1; for(int j = 0; j < K+1; j++) { int y = adj[x][j]; if(!y) continue; if(j == K) pr('P'); else { if(!in || in && j != c) pr(j), dfs(y, 0, d+1); } } if(~c) pr(c), dfs(adj[x][c], 1, d+1); if(!in) pr('-'); } int main() { fast_io; int n, l = 0; string s; cin >> n; for(int i = 0; i < n; i++) { cin >> s, add(s); if((int)s.size() > l) l = (int)s.size(), ms = s; } dfs(0, 1, 0); cout << (int)ret.size() << "\n"; for(char c: ret) cout << c << "\n"; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Correct | 0 ms | 460 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Correct | 0 ms | 344 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 1 ms | 348 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 348 KB | Output is correct |
2 | Correct | 1 ms | 860 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 1 ms | 1624 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 1 ms | 1628 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 1 ms | 1628 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 1 ms | 1628 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 2 ms | 1780 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |