206. 콜라 문제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import Foundation
func solution(_ a:Int, _ b:Int, _ n:Int) -> Int {
var portion : Int = 0
var mod : Int = 0
var answer : Int = 0
var N = n
while N >= a {
portion = (N / a) * b
mod = N % a
N = portion + mod
answer += portion
}
return answer
}
일단 몫, 나머지를 구분하였다. 무한 반복을 통해 몫과 나머지의 합이 a 미만일때 종료하게 하였다.
몫만 하게 되면 혹시라도 나머지가 남아있는 경우 그합으로 또 바꿀 수 있는 조건이 될 수도 있기 때문이다.
그래서 몫 부분을 계속 더했고 그 결과 값을 리턴하였다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.