프로그래머스 4-4 TIL

Seunggyu Jung·2023년 4월 5일
0
post-thumbnail

Day 13 3/4 : 중복된 문자 제거

Q. 문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요.

내 풀이:

function solution(my_string) {
    return [...new Set(my_string)].join("");
}

해설:

  • new Set(arr)은 중복된 요소가 없는 객체를 반환해준다. 이를 전개구문과 새로운 배열로 감싸 배열의 형태로 만들어주며, 마지막에 join메서드로 하나의 문자열로 만들어준다.
    참고로, 중복은 대소문자를 가리지 않고 동일하게 취급하여 처리한다.

Day 13 4/4 : 삼각형의 완성조건

Q. 삼각형의 세 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다. 세 변으로 삼각형을 만들 수 있다면 1, 만들 수 없다면 2를 return하도록 solution 함수를 완성해주세요.

내 풀이

function solution(sides) {
    sides.sort((a,b) => b - a)
    return sides[0] < sides[1] + sides[2] ? 1 : 2;
}

해설

  • 1단계. 파라미터의 배열에 들어가있는 요소는 무조건 3개이며, 순서대로 정렬되어 있지 않다는 것을 파악한다.
  • 2단계. 이 배열을 sort메서드를 이용하여 내림차순으로 정리하면, 가장 큰 변의 길이가 0번째 인덱스로 오게 된다.
  • 3단계. 0번째 인덱스의 변과 다른 두 변의 합을 비교하는 삼항 연산자를 작성하여 마무리한다.

마무리

  • Set에 대해 자세히 알지 못해서 푸는데 상당히 고민했다. 본 내용은 정규수업에서 제대로 배운 뒤에 다시 한 번 풀어볼 것!!
  • 화살표 함수를 자주 사용하여 익히도록 하자!!
profile
감동을 주고픈 개발자(준비생)

0개의 댓글