백준 c++ 17413 단어 뒤집기 2

jaranda·2022년 1월 31일
0

17413 단어 뒤집기 2



문제풀이

#include <iostream>
#include <stack>
#include <string>
using namespace std;
void fast_io(void)
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);
}
int main(void)
{
	fast_io();
	stack<char> s;
	string str;
	int i = 0;
	getline(cin, str);
	while (str[i] != '\0')
	{
		if (str[i] == '<')
		{
			while (!s.empty())
			{
				cout << s.top();
				s.pop();
			}
			while (true)
			{
				cout << str[i];
				if (str[i] == '>')
					break;
				i++;
			}
		}
		else if (isalnum(str[i]))
		{
			s.push(str[i]);
		}
		else
		{
			while (!s.empty())
			{
				cout << s.top();
				s.pop();
			}
			cout << " ";
		}
		i++;
	}
	while (!s.empty())
	{
		cout << s.top();
		s.pop();
	}
}

처음에 cin >> str;로 하다가 띄어쓰기 뒷부분이 잘리는걸보고 getline으로 바꿧다..

profile
자라는 개발자

0개의 댓글

관련 채용 정보