캠핑장은 연속하는 P일 중 L일 동안만 사용할 수 있고, 강산이가 V일짜리 휴가를 시작했을 때 강산이가 캠핑장을 최대 며칠동안 사용할 수 있는가?
어쨌든 사용할 수 있는 일수만큼 연속해서 사용하는 경우가 최대 사용할 수 있다.
V를 P로 나누고, 그 값에 L을 곱한다. 이게 일단 나머지 없이 최대로 캠핑할 수 있는 날짜수.
- 예를 들어, L=5, P=8, V=20
이면 OOOOOXXXOOOOOXXX
까지 나타낸 경우.
그 뒤에도 V를 P로 나눈 나머지를 구하고, 이게 위에서 구하고 남은 날짜 보다 크면 L을 더해주고, 그게 아니면 나머지를 더해준다.
위에서 V/P*L = 10
이고, 나머지 휴가가 20-16=4
남은 상황. 이것이 V%P=4
와 같고, 이 값이 L보다 작으므로 답은 (V/P*L) +(V%P)
🙆♀️ 정답 코드
import java.util.*; import java.io.*; public class Main { public static void main(String[] args)throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String input; int cnt = 0; while(true){ cnt++; input = br.readLine(); if(input.equals("0 0 0")) break; else{ StringTokenizer st = new StringTokenizer(input); int L = Integer.parseInt(st.nextToken()); int P = Integer.parseInt(st.nextToken()); int V = Integer.parseInt(st.nextToken()); int div = V/P; int nam = V%P; //2 4 6 //OOXXOO if(nam>L) nam = L; int ans = div*L+nam; System.out.println("Case "+cnt+": "+ans); } } } }