답안 #546287

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
546287 2022-04-07T04:27:26 Z Jomnoi 크레이피쉬 글쓰는 기계 (IOI12_scrivener) C++17
100 / 100
429 ms 89564 KB
#include <bits/stdc++.h>
using namespace std;

const int N = 1e6 + 10;

int now = 0;

class Crayfish {
public :
    char letter;
    int len;
    int par[20];
}s[N];

void Init() {}

void TypeLetter(char L) {
    now++;
    s[now] = s[now - 1];
    s[now].letter = L;
    s[now].len = s[now - 1].len + 1;
    s[now].par[0] = now - 1;
    for(int i = 1; i < 20; i++) {
        s[now].par[i] = s[s[now].par[i - 1]].par[i - 1];
    }
}

void UndoCommands(int U) {
    now++;
    s[now] = s[now - U - 1];
}

char GetLetter(int P) {
    P = s[now].len - P - 1;
    int res = now;
    for(int i = 0; i < 20; i++) {
        if(P & (1<<i)) {
            res = s[res].par[i];
        }
    }
    return s[res].letter;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 1 ms 320 KB Output is correct
9 Correct 1 ms 312 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 312 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 312 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 0 ms 212 KB Output is correct
9 Correct 1 ms 312 KB Output is correct
10 Correct 1 ms 256 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 468 KB Output is correct
2 Correct 2 ms 468 KB Output is correct
3 Correct 2 ms 596 KB Output is correct
4 Correct 1 ms 724 KB Output is correct
5 Correct 2 ms 596 KB Output is correct
6 Correct 2 ms 724 KB Output is correct
7 Correct 2 ms 596 KB Output is correct
8 Correct 2 ms 724 KB Output is correct
9 Correct 2 ms 724 KB Output is correct
10 Correct 2 ms 724 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 318 ms 65648 KB Output is correct
2 Correct 350 ms 79712 KB Output is correct
3 Correct 307 ms 79820 KB Output is correct
4 Correct 321 ms 84768 KB Output is correct
5 Correct 358 ms 74136 KB Output is correct
6 Correct 293 ms 86016 KB Output is correct
7 Correct 357 ms 75988 KB Output is correct
8 Correct 337 ms 84368 KB Output is correct
9 Correct 373 ms 80400 KB Output is correct
10 Correct 233 ms 89564 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 353 ms 61236 KB Output is correct
2 Correct 385 ms 54292 KB Output is correct
3 Correct 301 ms 67788 KB Output is correct
4 Correct 313 ms 60768 KB Output is correct
5 Correct 296 ms 77276 KB Output is correct
6 Correct 316 ms 79756 KB Output is correct
7 Correct 307 ms 79632 KB Output is correct
8 Correct 429 ms 69052 KB Output is correct
9 Correct 404 ms 66168 KB Output is correct
10 Correct 228 ms 88524 KB Output is correct