[C++] 프로그래머스 접미사인지 확인하기

문제설명

어떤 문자열에 대해서 접미사는 특정 인덱스부터
시작하는 문자열을 의미합니다.
예를 들어, "banana"의 모든 접미사는
"banana", "anana", "nana", "ana", "na", "a"입니다.
문자열 my_string과 is_suffix가 주어질 때,
is_suffix가 my_string의 접미사라면 1을,
아니면 0을 return 하는 solution 함수를 작성해 주세요.


제한사항

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


입출력 예

my_strings is_suffix result
“banana” “ana” 1
“banana” “nan” 0
“banana” “wxyz” 0
“banana” “abanana” 0


풀이

is_suffix의 문자열이 my_strings의 접미사인지 판단하는 문제입니다. my_strings의 문자열을 첫 번째 인덱스부터 compare 함수로 비교하여 문제를 풀 수 있었습니다.

#include <string>
#include <vector>

using namespace std;

int solution(string my_string, string is_suffix) {
    int answer = 0;
    string tmp = my_string;
    
    for(int i = 0; i < my_string.length(); i++)
    {
        if(tmp.compare(is_suffix) == 0)
        {
            answer = 1;
            break;
        }
        tmp.erase(tmp.begin());
    }
    
    return answer;
}


결과

코드 실행결과

Categories:

Updated:

Leave a comment