View
https://www.acmicpc.net/problem/4796
📚 문제
캠핑장을 연속하는 P일 중, L일 동안만 사용할 수 있다. 강산이는 이제 막 V일짜리 휴가를 시작했다. 강산이가 캠핑장을 최대 며칠동안 사용할 수 있을까?
각 테스트 케이스는 한줄로 이루어져 있고 L, P, V를 순서대로 포함하고 있다. 마지막 줄에는 0이 3개 주어진다.
예제 입력 1 | 예제 출력 1 |
5 8 20 5 8 17 0 0 0 |
Case 1: 14 Case 2: 11 |
📝 문제 해결
- L : 캠핑장을 사용할 수 있는 기간
- P : 연속하는 기간
- V : 휴가기간
1) 휴가기간(20)을 연속기간(8)으로 나눈 몫에 캠핑장을 사용할 수 있는 기간(5)를 곱해준다. = L * (V/P)
2-1) 휴가기간(20)을 연속기간(8)으로 나눈 나머지를 더해준다.
2-2) 나머지가 캠핑장을 사용할 수 있는 기간(L)보다 클 때는 캠핑장을 사용할 수 있는 기간을 더해준다.
최대 사용기간 : L * (V/P) + Math.min(L, (V%P))
💻 코드
import java.util.Scanner;
public class BOJ4796{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
int cnt = 1;
while(true){
int l = sc.nextInt();
int p = sc.nextInt();
int v = sc.nextInt();
if(l==0 && p==0 && v==0) break;
int result = l*(v/p) + Math.min(l, v%p);
sb.append("Case "+cnt+": "+result+"\n");
cnt++;
}
System.out.print(sb);
}
}
728x90
'알고리즘 > 백준' 카테고리의 다른 글
[스택] 백준 10773번 제로(Java) (0) | 2022.11.15 |
---|---|
[그리디] 백준 10610번 30(Java) (0) | 2022.11.10 |
[그리디] 백준 1343번 폴리오미노(Java) (0) | 2022.11.07 |
reply