[C++] 프로그래머스 문자열 섞기

문제설명

길이가 같은 두 문자열 str1과 str2가 주어집니다.

두 문자열의 각 문자가 앞에서부터 서로 번갈아가면서
한 번씩 등장하는 문자열을 만들어 return 하는 solution 함수를 완성해 주세요.


제한사항

• 1 ≤ str1의 길이 = str2의 길이 ≤ 10
  - str1과 str2는 알파벳 소문자로 이루어진 문자열입니다.


입출력 예

str1 str2 result
“aaaaa” “bbbbb” “ababababab”


풀이

str1과 str2를 번갈아 가며 한 문자씩 answer에 저장하는 로직을 구현하여 문제를 풀었습니다.

#include <string>
#include <vector>

using namespace std;

string solution(string str1, string str2) {
    string answer = "";
    
    int len1 = str1.length();
    int len2 = str2.length();
    
    int max_len = max(len1, len2);
    
    for (int i = 0; i < max_len; i++)
    {
        if (i < len1)
        {
            answer.push_back(str1[i]);
        }
        
        if(i < len2)
        {
            answer.push_back(str2[i]);
        }
    }
    
    return answer;
}


결과

코드 실행결과

Categories:

Updated:

Leave a comment