문제
어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다.
문자열 my_string과 is_suffix가 주어질 때, is_suffix가 my_string의 접미사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요.
솔루션
#include <string>
#include <vector>
using namespace std;
int solution(string my_string, string is_suffix) {
if(my_string.size() >= is_suffix.size()){
if(my_string.substr(my_string.size()-is_suffix.size(),is_suffix.size()) == is_suffix){
return 1;
}
else{
return 0;
}
}
else{
return 0;
}
}
메모
is_suffix크기가 my_string크기보다 크면
my_string.substr(my_string.size()-is_suffix.size()이 범위를 벗어나서 오류가 난다.
그래서 두개 크기 비교 먼저해야 올바르게 문제를 해결할 수 있다.
https://school.programmers.co.kr/learn/courses/30/lessons/181908
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
'프로그래머스코딩테스트연습풀이 > C++' 카테고리의 다른 글
[프로그래머스/C++] 부분 문자열 이어 붙여 문자열 만들기 (0) | 2025.02.17 |
---|---|
[프로그래머스/C++] 접미사 배열 (0) | 2025.02.17 |
[프로그래머스/C++] 접두사인지 확인하기 (0) | 2025.02.17 |
[프로그래머스/C++] 문자열의 뒤의 n글자 (0) | 2025.02.17 |
[프로그래머스/C++] 문자열의 앞의 n글자 (0) | 2025.02.17 |