# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
63013 | 2018-07-31T09:43:49 Z | theknife2001 | Crayfish scrivener (IOI12_scrivener) | C++17 | 1000 ms | 137264 KB |
#include <bits/stdc++.h> using namespace std; const int N=1e6+55; int trie[N+10000][26]; char letter[N]; int p[N][21]; int a[N]; int l[N]; int sh[30]; int node; int cnt=1; int k=1; void Init() { for(int i=0;i<25;i++) sh[i]=(1<<i); node=cnt++; } int c,temp,nd; void TypeLetter(char L) { c=L-'a'; temp=node; if(trie[node][c]==0) trie[node][c]=cnt++; node=trie[node][c]; letter[node]=L; a[k]=node; l[k]=l[k-1]+1; if(p[node][0]==0) { p[node][0]=temp; for(int i=1;i<20;i++) { p[node][i]=p[p[node][i-1]][i-1]; if(p[node][i]==0) break; } } k++; } void UndoCommands(int U) { node=a[k-U-1]; l[k]=l[k-U-1]; a[k]=node; k++; } char GetLetter(int P) { P=l[k-1]-P-1; nd=node; for(int i=20;i>=0;i--) { if((P&sh[i])) nd=p[nd][i]; } return letter[nd]; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 376 KB | Output is correct |
2 | Correct | 3 ms | 376 KB | Output is correct |
3 | Correct | 2 ms | 436 KB | Output is correct |
4 | Correct | 2 ms | 436 KB | Output is correct |
5 | Correct | 2 ms | 488 KB | Output is correct |
6 | Correct | 2 ms | 616 KB | Output is correct |
7 | Correct | 2 ms | 616 KB | Output is correct |
8 | Correct | 3 ms | 616 KB | Output is correct |
9 | Correct | 4 ms | 616 KB | Output is correct |
10 | Correct | 2 ms | 616 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 616 KB | Output is correct |
2 | Correct | 3 ms | 712 KB | Output is correct |
3 | Correct | 2 ms | 712 KB | Output is correct |
4 | Correct | 2 ms | 712 KB | Output is correct |
5 | Correct | 3 ms | 712 KB | Output is correct |
6 | Correct | 4 ms | 712 KB | Output is correct |
7 | Correct | 3 ms | 712 KB | Output is correct |
8 | Correct | 3 ms | 712 KB | Output is correct |
9 | Correct | 3 ms | 712 KB | Output is correct |
10 | Correct | 2 ms | 712 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 868 KB | Output is correct |
2 | Correct | 5 ms | 876 KB | Output is correct |
3 | Correct | 5 ms | 876 KB | Output is correct |
4 | Correct | 4 ms | 1148 KB | Output is correct |
5 | Correct | 5 ms | 1148 KB | Output is correct |
6 | Correct | 5 ms | 1276 KB | Output is correct |
7 | Correct | 5 ms | 1276 KB | Output is correct |
8 | Correct | 5 ms | 1276 KB | Output is correct |
9 | Correct | 5 ms | 1276 KB | Output is correct |
10 | Correct | 4 ms | 1276 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 713 ms | 112896 KB | Output is correct |
2 | Correct | 933 ms | 124284 KB | Output is correct |
3 | Correct | 685 ms | 124284 KB | Output is correct |
4 | Correct | 479 ms | 124284 KB | Output is correct |
5 | Correct | 753 ms | 124284 KB | Output is correct |
6 | Correct | 562 ms | 134200 KB | Output is correct |
7 | Correct | 781 ms | 134200 KB | Output is correct |
8 | Correct | 795 ms | 134200 KB | Output is correct |
9 | Correct | 861 ms | 137264 KB | Output is correct |
10 | Correct | 376 ms | 137264 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 947 ms | 137264 KB | Output is correct |
2 | Correct | 974 ms | 137264 KB | Output is correct |
3 | Correct | 555 ms | 137264 KB | Output is correct |
4 | Correct | 648 ms | 137264 KB | Output is correct |
5 | Correct | 652 ms | 137264 KB | Output is correct |
6 | Correct | 706 ms | 137264 KB | Output is correct |
7 | Correct | 682 ms | 137264 KB | Output is correct |
8 | Correct | 878 ms | 137264 KB | Output is correct |
9 | Execution timed out | 1085 ms | 137264 KB | Time limit exceeded |
10 | Halted | 0 ms | 0 KB | - |