const int MAX=1e6+5;
char X[MAX];
int ind,tot,arr[MAX],height[MAX],Parent[MAX][22];
void Init()
{
return ;
}
void TypeLetter(char L)
{
X[++ind]=L;
Parent[ind][0]=arr[tot++];
height[ind]=height[Parent[ind][0]]+1;
for(int A=1;A<20;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=19;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 |
416 KB |
Output is correct |
2 |
Correct |
3 ms |
564 KB |
Output is correct |
3 |
Correct |
3 ms |
564 KB |
Output is correct |
4 |
Correct |
2 ms |
564 KB |
Output is correct |
5 |
Correct |
3 ms |
588 KB |
Output is correct |
6 |
Correct |
3 ms |
588 KB |
Output is correct |
7 |
Correct |
3 ms |
588 KB |
Output is correct |
8 |
Correct |
3 ms |
588 KB |
Output is correct |
9 |
Correct |
2 ms |
588 KB |
Output is correct |
10 |
Correct |
2 ms |
588 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2 ms |
588 KB |
Output is correct |
2 |
Correct |
2 ms |
588 KB |
Output is correct |
3 |
Correct |
2 ms |
588 KB |
Output is correct |
4 |
Correct |
2 ms |
588 KB |
Output is correct |
5 |
Correct |
2 ms |
588 KB |
Output is correct |
6 |
Correct |
3 ms |
588 KB |
Output is correct |
7 |
Correct |
2 ms |
588 KB |
Output is correct |
8 |
Correct |
3 ms |
588 KB |
Output is correct |
9 |
Correct |
3 ms |
588 KB |
Output is correct |
10 |
Correct |
2 ms |
588 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
3 ms |
700 KB |
Output is correct |
2 |
Correct |
4 ms |
700 KB |
Output is correct |
3 |
Correct |
4 ms |
784 KB |
Output is correct |
4 |
Correct |
5 ms |
1040 KB |
Output is correct |
5 |
Correct |
3 ms |
1040 KB |
Output is correct |
6 |
Correct |
4 ms |
1040 KB |
Output is correct |
7 |
Correct |
5 ms |
1040 KB |
Output is correct |
8 |
Correct |
5 ms |
1040 KB |
Output is correct |
9 |
Correct |
5 ms |
1040 KB |
Output is correct |
10 |
Correct |
5 ms |
1040 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
790 ms |
56268 KB |
Output is correct |
2 |
Correct |
779 ms |
62192 KB |
Output is correct |
3 |
Correct |
583 ms |
62192 KB |
Output is correct |
4 |
Correct |
528 ms |
62192 KB |
Output is correct |
5 |
Correct |
780 ms |
62192 KB |
Output is correct |
6 |
Correct |
499 ms |
67456 KB |
Output is correct |
7 |
Correct |
673 ms |
67456 KB |
Output is correct |
8 |
Correct |
789 ms |
67456 KB |
Output is correct |
9 |
Correct |
871 ms |
68772 KB |
Output is correct |
10 |
Correct |
289 ms |
68772 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Execution timed out |
1082 ms |
68772 KB |
Time limit exceeded |
2 |
Halted |
0 ms |
0 KB |
- |