-
이번에는 BOJ의 5532번 문제 "방학 숙제" 를 풀어보도록 하자
입력으로, 방학의 총 일수 L, 방학기간에 해야할 국어 숙제의 총 페이지수 A, 수학 숙제의 총 페이지수 B, 하루에 최대로 풀 수 있는 페이지수 국어 : C, 수학 : D 가 주어지고, 출력으로 숙제를 하지 않고 놀 수 있는 최대 일 수를 구하면 되는 문제이다.
입력부분에 "항상 방학 숙제를 방학 기간내에 다 할 수 있는 경우만 입력으로 주어진다." 라는 구문이 있기 때문에, 이 문제를 풀기 위해서 따로 예외 처리를 하지 않아도 된다. 그래서 먼저 국어숙제만 할 때 필요한 요일 수를 구하고, 수학 숙제를 할 때 필요한 요일 수와 비교하여 답을 구하도록 했다.
성공한 코드는 아래와 같다.
import java.io.*; import java.util.*; public class sample { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int L = Integer.parseInt(br.readLine()); int A = Integer.parseInt(br.readLine()); int B = Integer.parseInt(br.readLine()); int C = Integer.parseInt(br.readLine()); int D = Integer.parseInt(br.readLine()); int max = 0; if(A % C == 0) max = (A / C); else max = (A / C) + 1; if(B % D == 0) max = Math.max(max, B / D); else max = Math.max(max, (B / D) + 1); bw.write(L - max + "\n"); bw.flush(); br.close(); bw.close(); } }
문제 : https://www.acmicpc.net/problem/5532
'Algorithm > BOJ(Baekjoon Online Judge)' 카테고리의 다른 글
[백준 - 11758번] CCW - Java //Wello Horld// (0) 2019.08.06 [백준 - 10156번] 과자 - Java //Wello Horld// (0) 2019.08.06 [백준 - 17350번] 2루수 이름이 뭐야 - Java //Wello Horld// (0) 2019.08.06 [백준 - 17356번] 수열과 쿼리 16 - Java //Wello Horld// (0) 2019.08.06 [백준 - 7572번] 간지(干支) - Java //Wello Horld// (0) 2019.07.26