const int MAX=1e6+99;
char X[MAX];
int ind,tot,arr[MAX],height[MAX],Parent[MAX][22];
void Init()
{
}
void TypeLetter(char L)
{
X[++ind]=L;
Parent[ind][0]=arr[tot++];
height[ind]=height[Parent[ind][0]]+1;
for(int A=1;A<21;A++)
Parent[ind][A]=Parent[Parent[ind][A-1]][A-1];
arr[tot]=ind;
return ;
}
void UndoCommands(int U)
{
++tot;
arr[tot]=arr[tot-U-1];
return ;
}
char GetLetter(int P)
{
int res=arr[tot];
for(int A=20;A>=0;A--)
{
if(height[Parent[res][A]]>P)
res=Parent[res][A];
}
return X[res];
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2 ms |
248 KB |
Output is correct |
2 |
Correct |
3 ms |
484 KB |
Output is correct |
3 |
Correct |
2 ms |
484 KB |
Output is correct |
4 |
Correct |
2 ms |
484 KB |
Output is correct |
5 |
Correct |
3 ms |
552 KB |
Output is correct |
6 |
Correct |
3 ms |
552 KB |
Output is correct |
7 |
Correct |
3 ms |
552 KB |
Output is correct |
8 |
Correct |
3 ms |
596 KB |
Output is correct |
9 |
Correct |
3 ms |
596 KB |
Output is correct |
10 |
Correct |
3 ms |
596 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
3 ms |
596 KB |
Output is correct |
2 |
Correct |
3 ms |
596 KB |
Output is correct |
3 |
Correct |
3 ms |
596 KB |
Output is correct |
4 |
Correct |
3 ms |
596 KB |
Output is correct |
5 |
Correct |
3 ms |
596 KB |
Output is correct |
6 |
Correct |
2 ms |
620 KB |
Output is correct |
7 |
Correct |
3 ms |
620 KB |
Output is correct |
8 |
Correct |
3 ms |
620 KB |
Output is correct |
9 |
Correct |
1 ms |
620 KB |
Output is correct |
10 |
Correct |
2 ms |
620 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
3 ms |
748 KB |
Output is correct |
2 |
Correct |
4 ms |
748 KB |
Output is correct |
3 |
Correct |
4 ms |
748 KB |
Output is correct |
4 |
Correct |
5 ms |
876 KB |
Output is correct |
5 |
Correct |
4 ms |
876 KB |
Output is correct |
6 |
Correct |
4 ms |
876 KB |
Output is correct |
7 |
Correct |
5 ms |
888 KB |
Output is correct |
8 |
Correct |
4 ms |
888 KB |
Output is correct |
9 |
Correct |
5 ms |
888 KB |
Output is correct |
10 |
Correct |
4 ms |
888 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
841 ms |
56328 KB |
Output is correct |
2 |
Correct |
783 ms |
62364 KB |
Output is correct |
3 |
Correct |
537 ms |
62364 KB |
Output is correct |
4 |
Correct |
554 ms |
62364 KB |
Output is correct |
5 |
Correct |
871 ms |
62364 KB |
Output is correct |
6 |
Correct |
589 ms |
67604 KB |
Output is correct |
7 |
Correct |
680 ms |
67604 KB |
Output is correct |
8 |
Correct |
587 ms |
67604 KB |
Output is correct |
9 |
Correct |
937 ms |
68756 KB |
Output is correct |
10 |
Correct |
268 ms |
68756 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Execution timed out |
1061 ms |
68756 KB |
Time limit exceeded |
2 |
Halted |
0 ms |
0 KB |
- |