[TIL] 240927 (자기소개서 작성 / 프로그래머스 접미사인지 확인하기 외 1개)

·2024년 9월 27일

TIL

목록 보기
171/268
post-thumbnail

오늘 한 일

  • 자기소개서 작성
  • 알고리즘 코드카타
    • 문자열의 앞의 n글자
    • 접미사인지 확인하기

알고리즘 코드카타

문자열의 앞의 n글자

문제

문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string의 앞의 n글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요.

풀이

function solution(my_string, n) {
    return my_string.slice(0,n)
}

거의 10초 정도만에 풀었던 것 같다. 풀었다고 하기도 민망한 난이도긴 했다.

접미사인지 확인하기

문제

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

풀이

function solution(my_string, is_suffix) {
  for (let i = 0; i < is_suffix.length; i++) {
    if (
      is_suffix[is_suffix.length - (1 + i)] !==
      my_string[my_string.length - (1 + i)]
    ) {
      return 0;
    }
  }
  return 1;
}

반복문을 이용해서 뒤에서부터 비교해주는 방법을 사용했다.

다른 사람의 풀이

function solution(my_string, is_suffix) {
    return my_string.slice(my_string.length - is_suffix.length) === is_suffix ? 1 : 0
}

좀 더 간단한 풀이가 있어 가져와봤다. 무조건적으로 짧은 코드가 좋은 건 아니지만, 이 방식은 알아보기도 쉽고 간단해서 참고하기 위해 올렸다.

돌아보기

자기소개서를 작성했다. 어떻게 작성해야하는지 감이 잘 안 왔지만 일단 어떻게든 써서 1차적으로는 완료가 된 것 같다. 모든 준비가 다 완벽할 때는 오지 않는다고 생각한다. 계속 도전해가며 동시에 준비를 탄탄하게 해나가는 것이 좋은 방법이라고 생각한다. 일단 그냥 해보자! 죽이 되든, 밥이 되든.

profile
웹 프론트엔드 개발자

0개의 댓글