프로그래머스 | 콜라 문제 (Java)

mul·2023년 1월 31일
0

알고리즘

목록 보기
1/65
post-custom-banner

🔒 문제

프로그래머스 Lv.1 콜라 문제

🔑 해결

빈병 a개를 가져다주면 콜라 b병을 주는 마트가 있을 때, n개를 가져다주면 몇 병을 받을 수 있는지 계산하는 문제이다.
콜라 n개를 가지고 있을 때, 마트에 (n/a)a개를 가져가서, (n/a)b병의 콜라를 받는다. 남은 콜라는 받은 콜라의 수와 가져가지 않은 콜라의 수의 합이다. 이를 남은 콜라의 수가 a개 이상인 동안 반복한다.

🔓 코드

class Cola {
    public int solution(int a, int b, int n) {
        int answer = 0;
        
        while (n >= a) {
        	answer += n/a*b; // 받은 콜라 수 answer에 +
        	n = n/a*b + n%a; // 수중에 남은 콜라 수 계산
        }
        
        return answer;
    }
    
}
post-custom-banner

0개의 댓글