문제 설명
문자열 배열 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"]
입출력 예 설명
입출력 예 #1
1번 인덱스의 문자열인 "notad"는 부분 문자열로 "ad"를 가집니다. 따라서 해당 문자열을 제거하고 나머지는 순서를 유지하여 ["and","abcd"]를 return 합니다.
입출력 예 #2
"ad"가 부분 문자열로 들어간 문자열이 존재하지 않습니다. 따라서 원래 배열을 그대로 return 합니다.
코드
#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){ // find -> 찾은 문자열의 첫번째 인덱스 반환 함수, string::npos -> 찾는 문자열이 없는 경우에 반환
answer.emplace_back(strArr[i]);
}
}
return answer;
}
'C++ > programmers 코딩테스트(level 0) C++' 카테고리의 다른 글
[C/C++] programmers Level 0 간단한 논리 연산 (0) | 2023.08.04 |
---|---|
[C/C++] programmers Level 0 문자열이 몇 번 등장하는지 세기 (0) | 2023.08.01 |
[C/C++] programmers Level 0 공백으로 구분하기 1 (0) | 2023.07.19 |
[C/C++] programmers Level 0 문자 리스트를 문자열로 변환하기 (0) | 2023.07.11 |
[C/C++] programmers Level 0 간단한 식 계산하기 (0) | 2023.07.04 |