Submission #370500

#TimeUsernameProblemLanguageResultExecution timeMemory
370500ijxjdjdCrayfish scrivener (IOI12_scrivener)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> #include "scrivener.h" #define FR(i, N) for (int i = 0; i < int(N); i++) #define all(x) begin(x), end(x) using namespace std; using ll = long long; const int MAXN = (int)(1e6) + 5; const int MAXK = 21; int up[MAXN][MAXK]; int undo[MAXN][MAXK]; int depth[MAXN]; char res[MAXN]; int cnt = 1; int liftUp(int u, int d) { for (int i = 0; i < MAXK; i++) { if (d&(1<<i)) { u = up[u][i]; } } return u; } int liftUndo(int u, int d) { for (int i = 0; i < MAXK; i++) { if (d&(1<<i)) { u = undo[u][i]; } } return u; } void Init() { } void TypeLetter(char L) { res[cnt] = L; up[cnt][0] = cnt-1; undo[cnt][0] = cnt-1; for (int i = 1; i < MAXK; i++) { up[cnt][i] = up[up[cnt][i-1]][i-1]; undo[cnt][i] = undo[undo[cnt][i-1]][i-1]; } depth[cnt] = depth[cnt-1]; cnt++; } void UndoCommands(int U) { int next = liftUndo(cnt-1, U); res[cnt] = res[next]; up[cnt][0] = up[next][0]; undo[cnt][0] = cnt-1; for (int i = 1; i < MAXK; i++) { up[cnt][i] = up[up[cnt][i-1]][i-1]; undo[cnt][i] = undo[undo[cnt][i-1]][i-1]; } depth[cnt] = depth[next]; } char GetLetter(int P) { return res[liftUp(cnt-1, depth[cnt-1] - P - 1)]; }

Compilation message (stderr)

scrivener.cpp:2:10: fatal error: scrivener.h: No such file or directory
    2 | #include "scrivener.h"
      |          ^~~~~~~~~~~~~
compilation terminated.