BOJ 5397 키로거 c++

Algorithm / / 2020. 8. 16. 15:04

BOJ 5397 키로거 c++

백준 5397 키로거 c++


#include <bits/stdc++.h>
using namespace std;

int L;

void hacking(string line) {
    list<char> editor;
    auto t = editor.end();
    for (char c: line) {
        if (c == '<') {
            if (!(t == editor.begin()))
                t--;
        }
        else if (c == '>') {
            if (!(t == editor.end())) {
                t++;
            }
        }
        else if (c == '-') {
            if (!(t == editor.begin())) {
                t--;
                t = editor.erase(t);
            }
        }
        else {
            editor.insert(t, c);
        }
    }
    for (auto c: editor) {
        cout << c;
    }
    cout << '\n';
}

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    cin >> L;
    while (L--) {
        string line;
        cin >> line;
        hacking(line);
    }
}

연결리스트를 이용.

'Algorithm' 카테고리의 다른 글

BOJ 10773 제로 c++  (0) 2020.08.18
BOJ 1158 요세푸스 c++  (0) 2020.08.17
BOJ 1475 방 번호 c++  (0) 2020.08.15
BOJ 1919 에너그램 만들기 c++  (0) 2020.08.15
BOJ 13300 방 배정 c++  (0) 2020.08.14
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기
// custom