제출 #759626

#제출 시각아이디문제언어결과실행 시간메모리
759626aykhnCrayfish scrivener (IOI12_scrivener)C++14
26 / 100
141 ms14268 KiB
#include <bits/stdc++.h>
 
// author: aykhn

using namespace std;

#define mpr make_pair
#define pb push_back
#define fi first
#define se second

int x;
string s;
vector<pair<int, int>> calls;

void Init() 
{
    s = "";
}

void TypeLetter(char L) 
{
    calls.pb(mpr(1, L));
}

void UndoCommands(int U) 
{
    calls.pb(mpr(2, U));
}

char GetLetter(int P) 
{
    x++;
    if (x == 1)
    {
        int i = calls.size() - 1;
        
        while (i >= 0)
        {
            if (calls[i].fi == 2)
            {
                i -= calls[i].se;
            }
            else
            {
                s.pb(calls[i].se);
            }
            i--;
        }
        reverse(s.begin(), s.end());
    }
    
    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...