어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "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_string | is_suffix | result |
---|---|---|
"banana" | "ana" | 1 |
"banana" | "nan" | 0 |
"banana" | "wxyz" | 0 |
"banana" | "abanana" | 0 |
입출력 예 설명
입출력 예 #1
예제 1번에서 is_suffix가 my_string의 접미사이기 때문에 1을 return 합니다.
입출력 예 #2
예제 2번에서 is_suffix가 my_string의 접미사가 아니기 때문에 0을 return 합니다.
입출력 예 #3
예제 3번에서 is_suffix가 my_string의 접미사가 아니기 때문에 0을 return 합니다.
입출력 예 #4
예제 4번에서 is_suffix가 my_string의 접미사가 아니기 때문에 0을 return 합니다.
function solution(my_string, is_suffix) {
return my_string.endsWith(is_suffix) ? 1 : 0;
}
해당 문제를 보자마자 이전에 풀었던 접두가가 생각 났다.
앞에서 부터 구하고 싶을 경우엔 startWith
를,
뒤에서 부터 구하고 싶을 경우엔 endsWith
를 이용하면된다.
예전에 풀었던 기억이 남아 다행히 금방 풀 수 있었다.
약간 막혔다면 endswith
로 작성해 뭐지..하고 한참 찾았다.
function solution(my_string, is_suffix) {
return my_string.slice(my_string.length - is_suffix.length) === is_suffix ? 1 : 0
}
slice 메서드를 사용해 문제를 푸셨다.
나도 초반에 이생각을 하긴 했지만 이렇게 간결하게 작성 할 수 있다는걸 깨닳았다...!
메서드를 사용해 간단하게 푸는 것도 좋지만
다른 방법으로도 풀어보는 힘을 길러야 겠다.