Submission #7278

# Submission time Handle Problem Language Result Execution time Memory
7278 2014-07-29T06:45:02 Z kriii Crayfish scrivener (IOI12_scrivener) C++
0 / 100
520 ms 166800 KB
#include <vector>
#include <map>
using namespace std;

map<char, int> trie[1000001]; int prv[1000001][20];
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;
		prv[n][0] = now;
		for (int i=1;i<20;i++) prv[n][i] = prv[prv[n][i-1]][i-1];
		get[n] = L;
	}
	hist[++time] = now = n;
}

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

char GetLetter(int P) {
	int x = now; P--;
	for (int i=0;i<20;i++) if (P & (1 << i)) x = prv[x][i];
	return get[x];
}
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 139872 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 8 ms 139872 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 140004 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 504 ms 166800 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 520 ms 162576 KB Output isn't correct
2 Halted 0 ms 0 KB -