반응형
Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
05-18 06:40
관리 메뉴

ImJay

[BOJ/Java] 2991. 사나운 개 본문

알고리즘/수학

[BOJ/Java] 2991. 사나운 개

ImJay 2024. 1. 20. 18:48
반응형

[BOJ/Java] 2991. 사나운 개

 

2991번: 사나운 개

창영 마을의 우체부, 우유배달원, 신문배달원은 상근이네 집에 가는 것을 매우 싫어한다. 그 이유는 상근이네 집에는 사나운 개 두 마리가 지키고 있기 때문이다. 하지만, 그들은 이 개의 행동

www.acmicpc.net


해설

풀이

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

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        // 각 개의 공격 및 휴식 시간 입력
        String input = br.readLine();
        StringTokenizer st = new StringTokenizer(input);
        int a = Integer.parseInt(st.nextToken());
        int b = Integer.parseInt(st.nextToken());
        int c = Integer.parseInt(st.nextToken());
        int d = Integer.parseInt(st.nextToken());

        // 각 배달원의 도착 시간 입력
        input = br.readLine();
        st = new StringTokenizer(input);
        int[] arrivedTime = new int[3];
        for (int i = 0; i < 3; i++) {
            arrivedTime[i] = Integer.parseInt(st.nextToken());
        }

        // 각 배달원의 도착 시간에 대한 처리
        for (int at : arrivedTime) {
            int ans = 0;

            // 첫 번째 개에 대한 처리
            if (0 < (at % (a + b)) && (at % (a + b)) <= a) {
                ans++;
            }

            // 두 번째 개에 대한 처리
            if (0 < (at % (c + d)) && (at % (c + d)) <= c) {
                ans++;
            }

            // 결과를 StringBuilder에 추가
            sb.append(ans + "\n");
        }

        // 최종 결과 출력
        System.out.print(sb);
    }
}

 

반응형

'알고리즘 > 수학' 카테고리의 다른 글

[BOJ/Java] 2477. 참외밭  (1) 2024.01.20
Comments