[C++] 프로그래머스 부분 문자열인지 확인하기

문제설명

부분 문자열이란 문자열에서 연속된 일부분에 해당하는 문자열을 의미합니다.
예를 들어, 문자열 "ana", "ban", "anana", "banana", "n"는
모두 문자열 "banana"의 부분 문자열이지만,
"aaa", "bnana", "wxyz"는 모두 "banana"의 부분 문자열이 아닙니다.

문자열 my_string과 target이 매개변수로 주어질 때,
target이 문자열 my_string의 부분 문자열이라면 1을,
아니라면 0을 return 하는 solution 함수를 작성해 주세요.


제한사항

• 1 ≤ my_string의 길이 ≤ 100
• my_string은 영소문자로만 이루어져 있습니다.
• 1 ≤ target의 길이 ≤ 100
• target은 영소문자로만 이루어져 있습니다.


입출력 예

my_string target result
“banana” “ana” 1
“banana” “wxyz” 0


풀이

target의 문자열이 my_stinrg의 부분 문자열인지 판단하는 문제입니다. find함수를 이용하여 문제를 해결할 수 있었습니다.

#include <string>
#include <vector>

using namespace std;

int solution(string my_string, string target) {
    int answer = 0;
    
    answer = my_string.find(target) != string::npos ? 1 : 0;
    
    return answer;
}


결과

코드 실행결과

Categories:

Updated:

Leave a comment