# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
120480 | KieranHorgan | Crayfish scrivener (IOI12_scrivener) | C++17 | 822 ms | 89552 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int a[1000005][23];
int curStep=0, node, i;
void Init() {}
void TypeLetter(char L) {
a[++curStep][21] = L;
a[curStep][22] = a[curStep-1][22]+1;
a[curStep][0] = curStep-1;
for(i = 1; 1<<i <= a[curStep][22]; i++)
a[curStep][i] = a[a[curStep][i-1]][i-1];
}
void UndoCommands(int U) {
copy(a[curStep-1-U], a[curStep-1-U]+23, a[++curStep]);
}
char GetLetter(int P) {
for(i = 21, node = curStep; i >= 0; i--)
if(a[node][22] - (1<<i) >= P+1)
node = a[node][i];
return a[node][21];
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |