자바/백준

[백준 4796] 캠핑

슈슈버거 2022. 8. 23. 23:44

문제

https://www.acmicpc.net/problem/4796

 

4796번: 캠핑

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, L, P, V를 순서대로 포함하고 있다. 모든 입력 정수는 int범위이다. 마지막 줄에는 0이 3개 주어진다.

www.acmicpc.net


내가 작성한 코드

import java.io.*;

public class 백준4796 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        int i = 1;

        while(true){
            String[] input = br.readLine().split(" ");
            int a = Integer.parseInt(input[0]);
            int b = Integer.parseInt(input[1]);
            int c = Integer.parseInt(input[2]);

            if(a == 0 && b == 0 && c == 0){
                break;
            }

            int result = (c/b)*a + Math.min(c%b,a);

            bw.write("Case "+i+": "+Integer.toString(result));
            bw.newLine();
            i++;
        }

        bw.close();
    }
}

내가 처음에 "Math.min(c%b,a)" 이 부분을 놓쳤었다

무조건 나머지를 더해주는 걸로 했었는데 생각해보니 나머지보다 이용할 수 있는 날이

작으면 작은 값을 더해줘야 하는게 맞았다

이용 가능한 날과 남은 날 중에 더 작은 값을 더해야 하는 게 이 문제의 주의점이 아닐까 싶더라