백준

백준 : 5397 키로거 C++

TIN9 2022. 9. 5.
반응형
#include <iostream>
#include <algorithm>
#include <list>
#include <vector>
#include <cmath>
#include <string>


int main()
{
	// 코테에서만 사용하는 함수들
	// 개발 환경에서는 사용x
	std::ios::sync_with_stdio(false);
	std::cin.tie(nullptr);

	int CaseNumb;

	std::cin >> CaseNumb;

	for (int i = 0; i < CaseNumb; ++i)
	{
		std::string Text;

		std::cin >> Text;

		std::list<char> vecText;

		auto Cursor = vecText.begin();

		for (char j : Text)
		{
			if (j == '<')
			{
				if (Cursor != vecText.begin())
				{
					--Cursor;
				}
			}

			else if (j == '>')
			{
				if (Cursor != vecText.end())
				{
					++Cursor;
				}
			}
			
			else if (j == '-')
			{
				if (Cursor != vecText.begin())
				{
					--Cursor;
					Cursor = vecText.erase(Cursor);
				}
			}

			else
			{
				vecText.insert(Cursor, j);
			}
		}
		
		for (char i : vecText)
		{
			std::cout << i;
		}
		std::cout << "\n";
	}
}
반응형

'백준' 카테고리의 다른 글

백준 : 2606 바이러스 c++  (0) 2023.05.15
백준 : 오목(C++)  (0) 2023.04.27
백준 : 10807 개수 세기 C++  (0) 2022.09.05
백준 : 3273 두 수의 합 C++  (0) 2022.09.05
백준 : 1475 방 번호 C++  (0) 2022.09.05

댓글