본문 바로가기
BaekJoon/Bronze

[BOJ/JAVA] 백준 1333 : 부재중 전화 (자바)

by HoonSikE 2023. 8. 3.
반응형
SMALL
문제 정보
  문제명   - 부재중 전화
  난이도   - 브론즈 II
문제 번호 - 1333번

문제 링크

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

 

1333번: 부재중 전화

첫째 줄에 세 정수 N, L, D가 공백을 사이에 두고 주어진다.

www.acmicpc.net


문제
얼마전, Day Of Mourning의 새 앨범이 나왔고, 강토는 이 앨범을 들으려고 한다.이 앨범에는 총 노래가 N곡이 들어있고, 모든 노래의 길이는 L초이다. 그리고, 노래와 노래 사이에는 5초 동안 아무 노래도 들리지 않는 조용한 구간이 있다.강토가 앨범의 첫 곡을 듣는 순간이 0초이다. 그리고 그 0초부터 강토의 전화벨이 울리기 시작한다. 전화벨은 D초에 1번씩 울리며, 한 번 울릴 때 1초동안 울린다.강토는 락 스피릿을 진심으로 느끼기 위해서 볼륨을 매우 크게 하고 듣기 때문에, 노래가 나오는 중에는 전화벨 소리를 듣지 못한다.만약, 전화벨이 노래가 시작되는 순간 울린다면, 강토는 전화를 받지 못한다. 또, 전화벨이 노래가 끝나는 순간 같이 끝난다면, 강토는 전화를 받을 수 없다.강토는 앨범을 1번만 듣는다. 즉, 모든 앨범 수록곡을 다 듣고 난 후에는 전화벨을 들을 수 있다.강토가 전화벨을 들을 수 있는 가장 빠른 시간을 구하는 프로그램을 작성하시오.

입력
첫째 줄에 세 정수 N, L, D가 공백을 사이에 두고 주어진다.

출력
첫째 줄에 강토가 전화벨을 들을 수 있는 가장 빠른 시간을 출력한다.

예제 입력/출력
예제 입력 예제 출력
2 5 7
7
4 5 20
40
6 9 20
40

알고리즘 분류
● 구현
● 시뮬레이션

소스코드
package Lv1_Bronze;

import java.io.*;
import java.util.*;

/**
 * @author HanHoon
 * @category 구현, 시뮬레이션
 * https://www.acmicpc.net/problem/1333
 */
public class BOJ_B2_1333_부재중_전화 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        StringBuilder str = new StringBuilder();

        int N = Integer.parseInt(st.nextToken());
        int L = Integer.parseInt(st.nextToken());
        int D = Integer.parseInt(st.nextToken());

        ArrayList<Boolean> list = new ArrayList<>();

        for(int n = 0; n < N; n++){
            // 노래 출력
            for(int l = 0; l < L; l++)
                list.add(true);

            // 마지막 곡이 아니면 음악 사이 5초동안 조용함
            if(n != N-1)
                for(int t = 0; t < 5; t++)
                    list.add(false);
        }

        int result = 0;

        // 노래를 들을 수 있는 구간 찾기
        while(result < list.size()){
            if(list.get(result) == false)
                break;
            result += D;
        }

        str.append(result);

        System.out.print(str);
        br.close();
    }
}

 


BaekJoon List
 

BaekJoon List

BOJ Start!! ● [BOJ] 백준 회원가입, 시작하는 법 ● [BOJ] 등급(티어) 및 Solved.AC 적용 ● [BOJ/JAVA] 백준 소스코드 제출 시 유의사항(자바) Bronze ● Bronze V  - ● Bronze IV  - ● Bronze III  -..

han-hoon.tistory.com


  

기회는 준비된 자에게 찾아온다.

 


 

반응형
LIST

댓글