게임 개발 로그

3일차 / 문자열 섞기 / C++ / 기초 본문

코테

3일차 / 문자열 섞기 / C++ / 기초

03:00am 2023. 11. 2. 10:14

문자열 섞기

문제 설명

  • 길이가 같은 두 문자열 str1과 str2가 주어집니다.
  • 두 문자열의 각 문자가 앞에서부터 서로 번갈아가면서 한 번씩 등장하는 문자열을 만들어 return 하는 solution 함수를 완성해 주세요.

제한사항

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

 

입출력 예

str1 str2  result
"aaaaa" "bbbbb" "ababababab"

 

 


 

내 코드

#include <string>
#include <vector>

using namespace std;

string solution(string str1, string str2) {
    string answer = "";
    for ( int i = 0; i < str1.length(); i++) {
        answer = answer + str1[i] + str2[i];
    }
    return answer;
}
  • 함수가 따로 존재할 것 같다는 아쉬움 및 다른 솔루션에 대한 고민 필요

 

 

다른 사람 풀이

#include <string>
#include <vector>

using namespace std;

string solution(string str1, string str2) {
    string answer = "";

    for(int i=0; i<str1.length(); i++)
    {
        answer.push_back(str1[i]);
        answer.push_back(str2[i]);
    }
    return answer;
}
  • 벡터 스타일의 string 함수인 push_back 을 사용하여 뒤에 붙여 넣기
  • 좋은 방법인 것 같다