[C++] 프로그래머스 ad 제거하기

문제설명

문자열 배열 strArr가 주어집니다.
배열 내의 문자열 중 "ad"라는 부분 문자열을 포함하고 있는 모든 문자열을 제거하고
남은 문자열을 순서를 유지하여 배열로 return 하는 solution 함수를 완성해 주세요.


제한사항

• 1 ≤ strArr의 길이 ≤ 1,000
  ◦ 1 ≤ strArr의 원소의 길이 ≤ 20
  ◦ strArr의 원소는 알파벳 소문자로 이루어진 문자열입니다.


입출력 예

strArr result
[“and”,”notad”,”abcd”] [“and”,”abcd”]
[“there”,”are”,”no”,”a”,”ds”] [“there”,”are”,”no”,”a”,”ds”]


풀이

strArr 배열에서 “ad”라는 부분 문자열을 포함하고 있는 문자열을 제거하는 문제입니다. find 함수를 이용하여 “ad”가 포함된 문자열을 판단하였습니다.

#include <string>
#include <vector>

using namespace std;

vector<string> solution(vector<string> strArr) {
    vector<string> answer;
    
    for(int i = 0; i < strArr.size(); i++)
    {
        if(strArr[i].find("ad") != string::npos)
            continue;
        else
            answer.push_back(strArr[i]);
    }
    
    return answer;
}


결과

코드 실행결과

Categories:

Updated:

Leave a comment