하다보니

1406번-에디터 본문

알고리즘 풀이/백준

1406번-에디터

claire 2022. 1. 17. 13:01
#include <bits/stdc++.h>
using namespace std;


int main() {
	string s;
	cin >> s;
	list<char> L;
	for (auto c : s) L.push_back(c);
	auto cur = L.end();
	int q;
	cin >> q;
	while (q--) {
		char n;
		cin >> n;
		if (n == 'P') {
			char m;
			cin >> m;
			L.insert(cur, m);
		}
		else if (n == 'L') {
			if (cur != L.begin()) {
				cur--;
			}
		}
		else if (n == 'D') {
			if (cur != L.end()) {
				cur++;
			}
		}
		else {
			if (cur != L.begin()) {
				cur--;
				cur = L.erase(cur);
			}
		}
	}
	for (auto c : L) cout << c;
}

연결리스트를 사용하는 문제이다. 

'알고리즘 풀이 > 백준' 카테고리의 다른 글

10773번-제로  (0) 2022.01.22
5397번-키로거  (0) 2022.01.18
3273번-두 수의 합  (0) 2022.01.13
1475번-방 번호  (0) 2022.01.13
2577번-숫자의 개수  (0) 2022.01.13