250x250
Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Archives
Today
Total
관리 메뉴

devlog_owen

[프로그래머스] 콜라문제 본문

algorithm/(js)프로그래머스

[프로그래머스] 콜라문제

developer_owen 2023. 12. 1. 14:17
728x90

문제

 

문제 이해가 어려웠는데 입출력 예 #2를 읽고 이해할 수 있었다.

무조건 반복문을 돌려야한다고 생각했고 평소 쓰는 for문이 아닌 while문을 써야겠다는 생각이 들었다.

 


 

 

나의 풀이

function solution(a, b, n) {
    var answer = 0;
    while(n >= a){
        let cola = b * Math.floor(n/a)
        answer += cola
        n= (n % a) + cola
    }
    
    return answer;
}


//콜라를 받기 위해 마트에 주어야 하는 병 수 a, 
// 빈 병 a개를 가져다 주면 마트가 주는 콜라 병 수 b, 
//     상빈이가 가지고 있는 빈 병의 개수 n

 

while문으로 가지고 있는 빈병의 갯수(n)이 마트에 갖다줘야하는 빈 병수(a)보다 같거나 클때만 반복문이 돌아가도록 했다.

그 다음 받는 콜라를 cola로 정의해서 b * Math.floor(n/a)로 설정하고

n을 n을 a로 나누고 남은 나머지와 받은 콜라 갯수를 합쳐서 갱신한다.

 


 

 

 

 

 

728x90