My Solution / Try
- while 반복문, n이 a보다 작은 순간 종료
- n은 a만큼 줄고 b만큼 더해짐을 반복
- 받을 수 있는 콜라 sum은 b만큼 더해짐을 반복
function solution(a, b, n) {
let sum = 0
while (n >= a) {
n = n - a + b
sum = sum + b
}
return sum;
}
Advanced Solution
- 재귀를 이용한 풀이
- n이 a보다 작다면 0 출력 => 재귀 탈출문
- 콜라병의 합계는 n을 a로나눈 몫에 b를 곱함
- solution 함수는 다시 a와 b 그리고 n을 a로 나눈 나머지와 합계를 더한 것으로 재귀(n이 a보다 작아질 때까지)
function solution(a, b, n) {
if (n < a) {
return 0;
} else {
let sum = Math.floor(n/a)*b
return sum + solution(a,b, n % a + sum)
}
}
'Programming' 카테고리의 다른 글
[TypeScript] Generics, 노마드코더 타입스크립트 챌린지 (0) | 2023.06.30 |
---|---|
[알고리즘] 프로그래머스 삼총사 (0) | 2023.06.30 |
Code Convention (Style Guide) (0) | 2023.06.27 |
[React] Virtual DOM (0) | 2023.06.26 |
[WIL] week2 회고 (0) | 2023.06.26 |