Algorithm

BF / 백준 1476 날짜 계산

Dear-J 2025. 5. 27. 19:55

 

문제 접근

구하고자 하는 값 = year

 

e = year % 15

s = year % 28

m = year % 19

 

만약 나머지가 e, s, m 값이 0이면 나눈 각각의 나눈 값으로 변경

 

while문으로 year을 1부터 1씩 증가시키면서 입력받은 E, S, M이 e, s, m과 각각 동시에 같을 때의 year이 정답

풀이

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

public class S1476 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());

        int E = Integer.parseInt(st.nextToken());
        int S = Integer.parseInt(st.nextToken());
        int M = Integer.parseInt(st.nextToken());

        int year = 1;
        
        while (true) {
            int e = year % 15;
            int s = year % 28;
            int m = year % 19;

            if (e == 0) {
                e = 15;
            }
            if (s == 0) {
                s = 28;
            }
            if (m == 0) {
                m = 19;
            }

            if (e == E && s == S && m == M) {
                break;
            }
            year += 1;
        }

        System.out.println(year);
    }
}

'Algorithm' 카테고리의 다른 글

BF / 백준 14500 테트로미노  (0) 2025.05.28
BF / 백준 1107 리모컨  (0) 2025.05.28
BF / 백준 3085 사탕 게임  (0) 2025.05.26
BF / 백준 2309 일곱 난쟁이  (0) 2025.05.25
DP / 백준 2133 타일 채우기  (0) 2025.05.25