백준 쿠키애호가

KIMYEONGJUN·2025년 5월 20일
post-thumbnail

문제

내가 생각했을때 문제에서 원하는부분

첫 번째 줄에는 테스트케이스의 개수 T가 주어진다.
그 다음 줄부터 T개의 줄에 테스트케이스가 한 줄씩 주어진다.
테스트케이스는 철수가 가진 쿠키의 개수 N과 날마다 먹는 쿠키의 개수 C로 이루어져 있다.

각 테스트케이스마다 한 줄씩 철수가 며칠 동안 쿠키를 먹을 수 있는지 출력한다.

내가 이 문제를 보고 생각해본 부분

BufferedReader와 StringBuilder를 사용한다.
가장 먼저 입력받는 테스트케이스의 개수 T를 읽는다.
T의 개수만큼 반복하면서 각 테스트케이스를 처리한다.
각 테스트케이스에서 쿠키 개수 N과 하루에 먹는 쿠키 개수 C를 읽는다.
N과 C를 사용하여 쿠키를 모두 먹는 데 걸리는 날짜 수를 계산한다. (N을 C로 나눈 몫에, 나머지가 있으면 1을 더합니다.)
계산된 날짜 수를 StringBuilder에 추가한다.
모든 테스트케이스 처리가 끝나면, StringBuilder에 저장된 전체 결과를 표준 출력(System.out)으로 한 번에 내보낸다.
사용을 마친 BufferedReader를 닫는다.

코드로 구현

package baekjoon.baekjoon_28;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

// 백준 11134번 문제
public class Main1028 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        int T = Integer.parseInt(br.readLine()); // 테스트케이스 개수 T 읽기

        for(int i = 0; i < T; i++) {
            StringTokenizer st = new StringTokenizer(br.readLine());
            int N = Integer.parseInt(st.nextToken()); // 쿠키 개수 N 읽기
            int C = Integer.parseInt(st.nextToken()); // 하루에 먹는 쿠키 개수 C 읽기

            // 며칠 동안 먹을 수 있는지 계산
            // N을 C로 나눈 몫에, 나머지가 0보다 크면 1을 더함
            int days = N / C;
            if(N % C > 0) {
                days++;
            }

            sb.append(days).append('\n'); // 결과 저장
        }

        System.out.print(sb.toString()); // 결과 출력
        br.close(); // BufferedReader 닫기
    }
}

마무리

코드와 설명이 부족할수 있습니다. 코드를 보시고 문제가 있거나 코드 개선이 필요한 부분이 있다면 댓글로 말해주시면 감사한 마음으로 참고해 코드를 수정 하겠습니다.

profile
Junior backend developer

0개의 댓글