프로그래머스 Lv0 day7

박상훈·2023년 2월 15일
0

프로그래머스LV0

목록 보기
3/6

😀특정 문자 제거하기

첫번째 풀이


단어를 반복해서 접근하면서 특정 문자가 있을경우 에는
무시하고 단어를 새롭게 만들어 가는 방식으로 코드를 작성하였다.
하지만 더 좋은 방법이 있을거라는 생각이 든다.

두번째 풀이

function solution(my_string, letter) {
    const answer = my_string.split(letter).join('')
    return answer;
}

split로 인자를 기준으로 분리해서 배열로 변환 하는 방법!
훨씬 깔금하다.

세번째 풀이

function solution(my_string, letter) {
    return my_string.replaceAll(letter, "");
}

replaceAll(letter,"") 매서드를 사용하여서 그문자를 빈 문자로 교체해버린다

📐각도기

내가푼방법

function solution(angle) {
    var answer = 0;
    if(angle < 90) return 1;
    if(angle === 90) return 2;
    if(angle > 90 && angle < 180) return 3;
    if(angle === 180) return 4
    return answer;
}
// 각 범위 만큼 해당 하는 숫자일때
// 1,2,3,4 를 리턴해보자

각 범위에 해당되는 값을 조건문으로 구현해주었다.

삼항연사자를 이용한 방법

function solution(angle) {
    return angle < 90 ? 1 : angle === 90 ? 2 : angle < 180 ? 3 : 4;
}

조건문을 삼항연산자로 대치 할 수 있는걸 알고 있었는데 한번에 떠올리기는
어려움이 있다. 다음번엔 삼항 연산자를 이용해 풀어봐야겟다

필터를 이용해서 푼 방법

function solution(angle) {
    return [0, 90, 91, 180].filter(x => angle>=x).length;
}

필터를 이용해서 정답을 구현해낼 수 있다고 하는데
코드를 봐도 정확히 이해가 안된다 filter부분을 공부해야겟다.

🍢양꼬치

10개당 한개의 서비스 음료가 제공되므로 그점을 신경써서 풀어주면되는문제

function solution(n, k) {
   let yang = n * 12000;
    let drink = k * 2000;
    let discount = Math.floor(n / 10) * 2000;
    return yang + drink - discount;
}

10개당이므로 나누고 정수로 바꿔주면 서비스값이 나온다!

➕짝수의 합

n 까지 짝수들의 합을 구하는 문제

첫번째 푼 방법

function solution(n) {
    let i = 1;
    let sum = 0;
    while(i <= n){
        if(i % 2 === 0 ) {
            sum = sum + i;
        }
        i = i + 1
    }
    return sum;
}

2로 나누어 0일때 그 값은 짝수이다!

profile
다들 좋은 하루 되세요

0개의 댓글