Submission #124835

#TimeUsernameProblemLanguageResultExecution timeMemory
124835nxteruCrayfish scrivener (IOI12_scrivener)C++14
0 / 100
258 ms52448 KiB
#include <bits/stdc++.h>
using namespace std;
int le[1000005],n,k,par[20][1000005],dp[1000005];
char re[1000005];
void Init(void){};
void TypeLetter(char c){
	int v=le[n],x=c-'a';
	k++;
	re[k]=c;
	par[0][k]=v;
	dp[k]=dp[v]+1;
	for(int i=0;i<19;i++)par[i+1][k]=par[i][par[i][k]];
	n++;
	le[n]=v;
}
void UndoCommands(int x){
	le[n+1]=le[n-x];
	n++;
}
char GetLetter(int x){
	x++;
	int v=le[n];
	for(int i=0;i<20;i++)if((dp[v]-x)>>i&1)v=par[i][v];
	return re[v];
}

Compilation message (stderr)

scrivener.cpp: In function 'void TypeLetter(char)':
scrivener.cpp:7:14: warning: unused variable 'x' [-Wunused-variable]
  int v=le[n],x=c-'a';
              ^
#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...