알고리즘/백준

백준-1476번/날짜 계산 (java)

연향동큰손 2024. 6. 26. 18:03

 

문제 해결

 

E의 범위는 1~15

S의 범위는 1~28

M의 범위는 1~19

 

E S M을 모두 1부터 시작해서 입력 받은 값과 같을때까지 반복문을 돌려서 E S M과 일치하는 경우를 찾아야한다.(브루트포스 알고리즘)

 

<전체 코드>

import java.util.Scanner;

public class Problem1476 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int E;
        int S;
        int M;
        int year=1;
        int e=1;
        int s=1;
        int m=1;

        E=scanner.nextInt();
        S=scanner.nextInt();
        M=scanner.nextInt();

        while(true){
            if(E==e&&S==s&&M==m){
                System.out.println(year);
                return;
            }
            m++;
            e++;
            s++;
            year++;

            if(e==16){
                e=1;
            }
            if(s==29){
                s=1;
            }
            if(m==20){
                m=1;
            }

        }

    }
}