# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
53707 | 2018-07-01T05:15:29 Z | 김세빈(#1437) | Type Printer (IOI08_printer) | C++11 | 69 ms | 3884 KB |
#include <bits/stdc++.h> using namespace std; char V[1010101], s[22], str[30303][22]; int K[30303]; int n, p, ans, x, t, m; bool comp(int ca, int cb) { int i; for(i=0;i<m && str[ca][i] && str[cb][i];i++){ if(str[ca][i] != str[cb][i]){ if(i == x){ if(str[ca][i] == str[t][i]) return 0; if(str[cb][i] == str[t][i]) return 1; } return str[ca][i] < str[cb][i]; } } if(!str[ca][i]) return 1; return 0; } int main() { int i, j, k; int l, r; scanf("%d", &n); for(i=0;i<n;i++){ scanf("%s",str[i]); k = strlen(str[i]); if(k > m) m = k, t = i; K[i] = i; } l = 0, r = n; for(x=0;x<m;x++){ sort(K+l, K+r, comp); for(j=l; j<r; j++) if(K[j] == t) break; for(l=j; l >= 0 && str[K[l]][x] == str[t][x]; l--); l++; for(r=j; r < n && str[K[r]][x] == str[t][x]; r++); } for(i=0;i<n;i++){ for(j=0;j<p && str[K[i]][j];j++) if(s[j] != str[K[i]][j]) break; for(;j<p;p--) V[ans++] = '-'; for(;str[K[i]][j];j++) s[p++] = V[ans++] = str[K[i]][j]; V[ans++] = 'P'; } printf("%d\n", ans); for(i=0;i<ans;i++) printf("%c\n", V[i]); return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 288 KB | Output is correct |
2 | Correct | 3 ms | 356 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 560 KB | Output is correct |
2 | Correct | 2 ms | 612 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 612 KB | Output is correct |
2 | Correct | 2 ms | 612 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 612 KB | Output is correct |
2 | Correct | 2 ms | 612 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 612 KB | Output is correct |
2 | Correct | 3 ms | 612 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 672 KB | Output is correct |
2 | Incorrect | 5 ms | 672 KB | Output isn't correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 6 ms | 732 KB | Output is correct |
2 | Correct | 11 ms | 1004 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 13 ms | 1132 KB | Output is correct |
2 | Correct | 12 ms | 1132 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 28 ms | 2028 KB | Output is correct |
2 | Correct | 61 ms | 3436 KB | Output is correct |
3 | Incorrect | 39 ms | 3436 KB | Output isn't correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 30 ms | 3436 KB | Output is correct |
2 | Correct | 63 ms | 3884 KB | Output is correct |
3 | Correct | 42 ms | 3884 KB | Output is correct |
4 | Correct | 69 ms | 3884 KB | Output is correct |