제출 #251650

#제출 시각아이디문제언어결과실행 시간메모리
251650tinjyu크레이피쉬 글쓰는 기계 (IOI12_scrivener)C++14
34 / 100
1103 ms117880 KiB
#include <iostream>
using namespace std;
char last;

void Init() {}
string s[1000005];
string ans="";
char c[1000005],ad[1000005];
int num[1000005];
long long int p;
void TypeLetter(char L) {
	p++;
	if(p<=5000)
	{
		s[p]=s[p-1]+L;
	}
	
	c[p]='a';
	ad[p]=L;
	//cout<<s[p]<<endl;
}

void UndoCommands(int U) {
	p++;
	if(p<=5000)s[p]=s[p-U-1];
	
	c[p]='b';
	num[p]=U;
	//cout<<s[p]<<endl;
}

char GetLetter(int P) {
	if(p<=5000)return s[p][P];
	if(ans=="")
	{
		for(int i=p;i>=1;i--)
		{
			if(c[i]=='a')ans=ad[i]+ans;
			else
			{
				i-=num[i];
			}
		}
	}
	return ans[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...