Submission #7277

#TimeUsernameProblemLanguageResultExecution timeMemory
7277kriiiCrayfish scrivener (IOI12_scrivener)C++98
0 / 100
276 ms88676 KiB
#include <map>
using namespace std;

map<char, int> trie[1000001];
int node,now,time,hist[1000001]; char get[10000001];

void Init() {}

void TypeLetter(char L) {
	int &n = trie[now][L];
	if (n == 0){
		n = ++node;
		get[n] = L;
	}
	hist[++time] = now = n;
}

void UndoCommands(int U) {
	now = hist[time-U];
	hist[++time] = now;
}

char GetLetter(int P) {
	return get[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...