본문 바로가기

프로그래머스 (Swift)/lv 1

[lv1] 콜라 문제

문제

 

내 정답 코드

import Foundation

func solution(_ a:Int, _ b:Int, _ n:Int) -> Int {
    var result = 0
    var n = n
    
    while(n >= a) {
        result += ((n / a) * b)
        let temp = n % a
        n = ((n / a) * b) + temp
    }
    return result
}

 

#

1. result는 얻은 콜라의 개수이다.

2. 남은 빈 병으로 콜라를 1개도 못 얻을 때 까지  반복하여 수행한다. while(n >= a)

3. 빈병으로부터 얻을 수 있는 콜라를 result에 더하고

4. a로 나눴을 때 나머지 값을 temp에 저장해놓는다. (빈 병)

5. 얻은 콜라의 개수에 남은 빈병 temp를 더하여 n개의 빈병을 다시 마련한다.

6. 반복문이 끝나고 얻은 콜라의 최종 개수를 반환한다.


배운 기술

'프로그래머스 (Swift) > lv 1' 카테고리의 다른 글

[lv1] 덧칠하기  (0) 2024.06.16
[lv1] 과일 장수  (0) 2024.06.16
[lv1] 삼총사  (0) 2024.06.12
[lv1] 추억 점수  (0) 2024.06.12
[lv1] 문자열 나누기  (0) 2024.06.02