Submission #61818

#TimeUsernameProblemLanguageResultExecution timeMemory
61818theknife2001Crayfish scrivener (IOI12_scrivener)C++17
0 / 100
290 ms3048 KiB
#include <bits/stdc++.h> #define ii pair < char , char > #define fi first #define se second using namespace std; const int N=1e6+5; ii a[N]; char s[N]; bool q=0; int i=0; void Init() {} void TypeLetter(char L) { a[i].fi='T'; a[i].se=L; i++; } void UndoCommands(int U) { a[i].fi='F'; a[i].se='0'+U; i++; } int j=0; char GetLetter(int P) { if(!q) { j=0; i--; while(i>=0) { if(a[i].fi=='T') { s[j]=a[i].se; j++; } else if(a[i].fi=='F') { i-=(a[i].se-'0'); } else { if('A'<=a[i].fi&&a[i].fi<='Z') assert(0); } i--; } reverse(s,s+j); } q=1; return s[P]; }
#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...