Submission #107594

# Submission time Handle Problem Language Result Execution time Memory
107594 2019-04-25T09:32:10 Z MrTEK Crayfish scrivener (IOI12_scrivener) C++14
34 / 100
1000 ms 83176 KB
const int N = 1e6 + 5;
const int LOG = 20;
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 512 KB Output is correct
2 Correct 2 ms 256 KB Output is correct
3 Correct 3 ms 384 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 256 KB Output is correct
7 Correct 2 ms 384 KB Output is correct
8 Correct 2 ms 256 KB Output is correct
9 Correct 2 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 384 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 384 KB Output is correct
5 Correct 2 ms 384 KB Output is correct
6 Correct 2 ms 256 KB Output is correct
7 Correct 2 ms 256 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 3 ms 512 KB Output is correct
2 Correct 4 ms 640 KB Output is correct
3 Correct 3 ms 640 KB Output is correct
4 Correct 4 ms 768 KB Output is correct
5 Correct 4 ms 640 KB Output is correct
6 Correct 4 ms 768 KB Output is correct
7 Correct 4 ms 640 KB Output is correct
8 Correct 4 ms 768 KB Output is correct
9 Correct 4 ms 768 KB Output is correct
10 Correct 3 ms 768 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 826 ms 62724 KB Output is correct
2 Correct 895 ms 76536 KB Output is correct
3 Correct 670 ms 76092 KB Output is correct
4 Correct 749 ms 79992 KB Output is correct
5 Correct 881 ms 70520 KB Output is correct
6 Correct 529 ms 83176 KB Output is correct
7 Execution timed out 1079 ms 59756 KB Time limit exceeded
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1085 ms 52852 KB Time limit exceeded
2 Halted 0 ms 0 KB -