Submission #120480

#TimeUsernameProblemLanguageResultExecution timeMemory
120480KieranHorganCrayfish scrivener (IOI12_scrivener)C++17
100 / 100
822 ms89552 KiB
#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)

scrivener.cpp: In function 'void UndoCommands(int)':
scrivener.cpp:15:44: warning: operation on 'curStep' may be undefined [-Wsequence-point]
  copy(a[curStep-1-U], a[curStep-1-U]+23, a[++curStep]);
                                            ^~~~~~~~~
scrivener.cpp:15:44: warning: operation on 'curStep' may be undefined [-Wsequence-point]
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...