# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
70924 | 2018-08-23T17:35:38 Z | FLDutchman | Crayfish scrivener (IOI12_scrivener) | C++14 | 1000 ms | 131400 KB |
#include <bits/stdc++.h> using namespace std; #define pb push_back #define fast_io() ios::sync_with_stdio(false) #define FOR(i, l, r) for(int i = (l); i < (r); i++) struct llist{ vector<llist*> lift; char c; int sz = 1; llist (char c) : c(c){} }; int getsz(llist *l) { if(!l) return 0; return l->sz; } llist *insert(llist* l, char c){ llist *nl = new llist(c); nl->sz = getsz(l)+1; if(!l) return nl; //cerr<<getsz(l) << " " << l->lift.size() << endl; int i = 0; while(true){ //cout<<getsz(l)<<endl; nl->lift.pb(l); //cout<<nl->lift.size()<<endl; if(l->lift.size() <= i) return nl; l = l->lift[i++]; } return nl; } char getletter(llist *l, int i){ //cerr<<getsz(l) << " " << l->lift.size() << endl; FOR(k, 0, 21) if(i & (1<<k)) l = l->lift[k]; return l->c; } vector <llist*> v; void Init() { v.pb(0); } void TypeLetter(char L) { //for(auto l : v) cout << getsz(l) << " " << (l ? to_string(l->lift.size()) :"") << endl; v.pb(insert(v.back(), L)); } void UndoCommands(int U) { v.pb(v[v.size()-1-U]); } char GetLetter(int P) { auto l = v.back(); return getletter(l, getsz(l)-1 - P); }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 248 KB | Output is correct |
2 | Correct | 2 ms | 356 KB | Output is correct |
3 | Correct | 3 ms | 396 KB | Output is correct |
4 | Correct | 3 ms | 612 KB | Output is correct |
5 | Correct | 2 ms | 612 KB | Output is correct |
6 | Correct | 3 ms | 612 KB | Output is correct |
7 | Correct | 2 ms | 612 KB | Output is correct |
8 | Correct | 4 ms | 612 KB | Output is correct |
9 | Correct | 2 ms | 612 KB | Output is correct |
10 | Correct | 2 ms | 612 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 612 KB | Output is correct |
2 | Correct | 2 ms | 612 KB | Output is correct |
3 | Correct | 2 ms | 612 KB | Output is correct |
4 | Correct | 2 ms | 620 KB | Output is correct |
5 | Correct | 3 ms | 624 KB | Output is correct |
6 | Correct | 2 ms | 624 KB | Output is correct |
7 | Correct | 3 ms | 624 KB | Output is correct |
8 | Correct | 2 ms | 636 KB | Output is correct |
9 | Correct | 3 ms | 812 KB | Output is correct |
10 | Correct | 3 ms | 812 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 836 KB | Output is correct |
2 | Correct | 4 ms | 964 KB | Output is correct |
3 | Correct | 7 ms | 988 KB | Output is correct |
4 | Correct | 6 ms | 1160 KB | Output is correct |
5 | Correct | 6 ms | 1160 KB | Output is correct |
6 | Correct | 7 ms | 1452 KB | Output is correct |
7 | Correct | 6 ms | 1452 KB | Output is correct |
8 | Correct | 7 ms | 1452 KB | Output is correct |
9 | Correct | 5 ms | 1452 KB | Output is correct |
10 | Correct | 5 ms | 1452 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1086 ms | 131400 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1092 ms | 131400 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |