코딩테스트

코딩테스트 접두사인지 확인하기

김도현2 2023. 7. 4. 09:32
반응형

코딩테스트 접두사인지 확인하기

문제 설명

 

출력 예시

 

어떤 문자열에 대해서 접두사는 특정 인덱스까지의 문자열을 의미합니다. 

예를 들어, "banana"의 모든 접두사는 "b", "ba", "ban", "bana", "banan", "banana"입니다.

 

is_prefix 문자열이 my_string의 접두사인지 확인하는 문제입니다.

접두사가 맞다면 1을 출력하고, 아니면 0을 출력합니다.

 

접두사란?

낱말의 앞에 붙어서 의미를 첨가하여 다른 낱말을 이루는 . 접사의 일종이다.

 

 

let my_string = "banana"; 
let is_prefix = "ban";
let str = '';

var answer = 0;
let str = '';
[...my_string].forEach(e=>{
    str += e;
    if(str == is_prefix){
        answer = 1;
    }
})

//1

"ban" 문자열은 "banana"의 접두사가 맞으므로 1을 출력합니다.

배열펼침연산자를 이용하여 my_string을 글자 하나하나 split 해주는 효과를 줍니다.

 

str 빈 변수를 만들어 여기에 my_string 한글자 한글자를 계속 넣어 is_prefix와 비교해줍니다.

my_string의 문자 갯수만큼 반복문을 하니 완전한 비교가 가능합니다.

 

그렇게 str은 "b", "ba", "ban" 이런식으로 증가되어 is_prefix와 똑같아 지니 1을 출력하게 됩니다.