제출 #1284333

#제출 시각아이디문제언어결과실행 시간메모리
1284333Jawad_Akbar_JJ크레이피쉬 글쓰는 기계 (IOI12_scrivener)C++20
100 / 100
476 ms86700 KiB
#include <iostream> using namespace std; const int N = 1<<20; int cur, tot, Sz[N], Par[N][20], Lst[N]; char chr[N]; void Init(){ } void print(int id){ if (id == 0){ cout<<"print : "; return; } print(Par[id][0]); cout<<chr[id]<<' '; } void TypeLetter(char c){ int nw = ++tot; Lst[nw] = nw; chr[nw] = c; Par[nw][0] = Lst[cur]; Sz[nw] = Sz[Lst[cur]] + 1; for (int i=1;i<20;i++) Par[nw][i] = Par[Par[nw][i-1]][i-1]; cur = nw; // print(Lst[cur]); // cout<<endl; } void UndoCommands(int u){ int nw = ++tot; Lst[nw] = Lst[cur - u]; cur = nw; // print(Lst[cur]); // cout<<endl; } char GetLetter(int P){ P++; int now = Lst[cur]; int k = Sz[now] - P; for (int i=0;i<20;i++) if ((1<<i) & k) now = Par[now][i]; return chr[now]; }
#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...