본문 바로가기
코딩테스트 준비/프로그래머스

[프로그래머스][C++] 공백으로 구분하기 1

by 스테디코디스트 2023. 10. 16.
반응형

<문제 소개>


<소스 코드>

#include <string>
#include <vector>

using namespace std;

vector<string> solution(string my_string) 
{
    vector<string> answer;    
    string curStr = "";
    
    for(int i = 0 ; i < my_string.size(); i++)
    {
        if(my_string[i] == ' ')
        {
            answer.push_back(curStr);
            curStr = "";
        }
        else
        {
            curStr += my_string[i];
        }
    }
    
    answer.push_back(curStr);
    
    return answer;
}

<풀이과정>

1. 각 단어들을 담을 curStr 선언

2. 문자열을 반복하면서 공백이 나오는지 체크

3. 공백이 나오지 않았다면 curStr에 현재 문자를 추가

4. 공백이 나왔다면 지금껏 저장한 문자열 curStr을 answer에 추가하고, curStr을 초기화시킴

5. 모든 문자열에 대해 위의 과정을 반복

6. 반복이 끝나고 나온 뒤 마지막 문자열 curStr을 answer에 넣어줌


<코멘트>

공백을 어떻게 구분법만 알면 쉽게 해결이었다.

'\n'로는 공백이 구분되지 않았다!


<제출결과>