Submission #107597

# Submission time Handle Problem Language Result Execution time Memory
107597 2019-04-25T09:39:49 Z MrTEK Crayfish scrivener (IOI12_scrivener) C++14
34 / 100
1000 ms 86708 KB
const int N = 1e6 + 5;
const int LOG = 21;
int cnt,back[N][LOG + 1],sz[N];
char ch[N];

void Init() {

}

void TypeLetter(char L) {
  cnt++;
  back[cnt][0] = cnt - 1;
  for (int i = 1 ; i <= LOG ; i++)
    back[cnt][i] = back[back[cnt][i - 1]][i - 1];
  sz[cnt] = sz[cnt - 1] + 1;
  ch[cnt] = L;
}

void UndoCommands(int U) {
  cnt++;
  back[cnt][0] = cnt - U - 1;
  for (int i = 1 ; i <= LOG ; i++)
    back[cnt][i] = back[back[cnt][i - 1]][i - 1];
  sz[cnt] = sz[cnt - U - 1];
  ch[cnt] = ch[cnt - U - 1];  
}

char GetLetter(int P) {
  P++;
  int x = cnt;
  for (int i = LOG ; i >= 0 ; i--)
    if (sz[back[x][i]] >= P)
      x = back[x][i];
  return ch[x];
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 384 KB Output is correct
3 Correct 2 ms 384 KB Output is correct
4 Correct 2 ms 256 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 2 ms 384 KB Output is correct
7 Correct 2 ms 384 KB Output is correct
8 Correct 2 ms 256 KB Output is correct
9 Correct 3 ms 384 KB Output is correct
10 Correct 3 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Correct 2 ms 384 KB Output is correct
3 Correct 2 ms 256 KB Output is correct
4 Correct 2 ms 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 2 ms 384 KB Output is correct
7 Correct 3 ms 384 KB Output is correct
8 Correct 2 ms 384 KB Output is correct
9 Correct 3 ms 384 KB Output is correct
10 Correct 2 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 512 KB Output is correct
2 Correct 4 ms 540 KB Output is correct
3 Correct 4 ms 768 KB Output is correct
4 Correct 2 ms 768 KB Output is correct
5 Correct 4 ms 640 KB Output is correct
6 Correct 5 ms 768 KB Output is correct
7 Correct 4 ms 768 KB Output is correct
8 Correct 4 ms 768 KB Output is correct
9 Correct 4 ms 768 KB Output is correct
10 Correct 4 ms 768 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 768 ms 65760 KB Output is correct
2 Correct 938 ms 80044 KB Output is correct
3 Correct 623 ms 79312 KB Output is correct
4 Correct 767 ms 83120 KB Output is correct
5 Correct 827 ms 73464 KB Output is correct
6 Correct 469 ms 86708 KB Output is correct
7 Execution timed out 1052 ms 57524 KB Time limit exceeded
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1047 ms 53028 KB Time limit exceeded
2 Halted 0 ms 0 KB -