항해14기 온보딩/항해14기 온보딩 개발일지

[항해14기] 온보딩 개발일지7 2023/03/13

스쿼트잘함 2023. 3. 13. 18:49

프로그래머스 기본 알고리즘 풀이

 

1일차 문제

1.

function solution(num1, num2) {
        let result = num1+num2
            let answer = result
        return answer;
    }

 

 

2. 

function solution(num1, num2) {
    var answer = 0;
    answer = num1-num2
    
    return answer;
}

 

 

3.

function solution(num1, num2) {
    var answer = 0;
    answer = num1 * num2
    return answer;
}

 

 

4.

Math.trunc 가능(버리기)

function solution(num1, num2) {
    var answer = 0;
    answer = num1 / num2
    return Math.floor(answer);
}

 

 

5.

function solution(num1, num2) {
    var answer = -1;
    answer = num1 % num2
    return answer;
}

 

 

6.

function solution(age) {
    var answer = 0;
    answer = 2023 - age
    return answer;
}

 

 

7.

3항연산자로도 풀어보자

 

function solution(num1, num2) {
    var answer = 0;
    if (num1===num2) {
        answer = 1
    } else {
        answer = -1
    }
    return answer;
}

 

 

8.

이것도 3항으로 풀어보자

 

function solution(angle) {
    var answer = 0;
    if (angle < 90){
        answer = 1
    } else if (angle === 90){
        answer = 2
    } else if (angle < 180){
        answer = 3
    } else {
        answer = 4
    }
        
    return answer;
}

 

 

9. 

function solution(n) {
    var answer = 0;
    for (i=0; i <= n; i++){
        if (i%2 === 0) {
            answer += i
        }
    }         
    return answer;
}

 

 

 

2일차 문제

1.

function solution(n, k) {
    var answer = 0;
    answer = n*12000 + k*2000 - Math.floor(n/10)*2000
    return answer;
}

 

2.

Math.ceil을 쓰면 1줄로나옴

 

function solution(n) {
    var answer = 0;
    for (i=1; i < n/7+1; i++){
       answer = i
    }
    return answer;
}

 

3.

function solution(slice, n) {
    var answer = 0;
    for (i=1; i < n/slice+1; i++){
        answer = i
    }         
    return answer;
}

 

4.

제한조건을 보지않아서 괜히 조건을 더 추가해버렸다.

 

function solution(dot) {
    var answer = 0;
    if (dot[0]>0 && dot[1]>0){
        answer = 1
    } else if (dot[0]<0 && dot[1]>0) {
        answer = 2
    } else if (dot[0]<0 && dot[1]<0){
        answer = 3
    } else if (dot[0]>0 && dot[1]<0){
        answer = 4
    }
    return answer;
}

 

5.

function solution(money) {
    var answer = [];
    answer.push(Math.trunc(money/5500))
    answer.push(money%5500)
    return answer;
}

 

6.

function solution(price) {
    var answer = 0;
    if (price >= 500000) {
        answer = price*0.8
    } else if (price >= 300000) {
        answer = price*0.9
    } else if (price >= 100000) {
        answer = price*0.95
    } else {
        answer = price
    }
    return Math.trunc(answer)
}

 

7.

var를 선언했을 때는 테스트에 실패항목이 존재하엿다. var 호이스팅과 연관되어 보이는데 기술매니저님께 질문 예정

 

function solution(n) {
    let answer = 0;
    if (Number.isInteger(Math.sqrt(n))) {
        answer =1
    } else {
        answer =2
    }
    return answer;
}