본문 바로가기
코딩테스트

[백준] 1424번 '새 앨범' - Java

by CuckooBird 2023. 8. 4.

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

 

1424번: 새 앨범

첫째 줄에 노래의 개수 N이 주어진다. 이 값은 100,000보다 작거나 같은 자연수이다. 둘째 줄에는 노래의 길이 L이 주어진다. 이 값은 초 단위이다. 셋째 줄에는 한 시디의 용량 C가 초 단위로 주어

www.acmicpc.net


문제


코드

import java.io.*;

public class Main {
	private static final BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
	private static final BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
	
	public static void main(String[] args) throws IOException {
		int n = Integer.parseInt(bf.readLine());
		int l = Integer.parseInt(bf.readLine());
		int c = Integer.parseInt(bf.readLine());
		
		// 시디 한 장에 들어갈 노래의 수
		int c_l = (c + 1) / (l + 1);
		// 시디 한 장에 들어갈 노래의 개수가 13으로 나누어 떨어지면 노래의 개수를 한개 줄임
		if(c_l % 13 == 0) c_l --;
		
		// 시디의 개수
		int cnt = n / c_l;
		// 시디에 넣고 남은 노래의 개수 rest
		int rest = n % c_l;
		// 남으면 시디를 추가함
		if(rest > 0) {
			cnt ++;
			// 만약 남은 노래가 13으로 나누어 떨어지면 하나 더 추가
			if(rest % 13 == 0) cnt ++;
		}
		
		bw.write(cnt + "\n");
		
		bf.close();
		bw.flush();
		bw.close();
	}
}

왜 틀린 건지 아시는 분이 계시다면 댓글 부탁드립니다.. 정말 왜 틀린건지 모르겠네요..