[백준/JAVA] 16199번 나이 계산하기

정은아·2024년 2월 25일

[알고리즘] 수학 모음

목록 보기
37/152
post-thumbnail

문제

내 풀이

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

public class Main extends Exception {
    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        StringTokenizer st = new StringTokenizer(br.readLine());

        int birthYear = Integer.parseInt(st.nextToken());
        int birthMonth = Integer.parseInt(st.nextToken());
        int birthDay = Integer.parseInt(st.nextToken());

        st = new StringTokenizer(br.readLine());

        int nowYear = Integer.parseInt(st.nextToken());
        int nowMonth = Integer.parseInt(st.nextToken());
        int nowDay = Integer.parseInt(st.nextToken());

        int manAge = 0;
        int saeAge = nowYear - birthYear + 1;
        int yearAge = nowYear - birthYear;

        if (nowMonth > birthMonth) {
            manAge = nowYear - birthYear;
        } else if (nowMonth == birthMonth) {
            if (nowDay >= birthDay) {
                manAge = nowYear - birthYear;
            } else {
                manAge = nowYear - birthYear - 1;
            }
        }else{
            manAge = nowYear - birthYear - 1;
        }

        if (manAge < 0) {
            manAge = 0;
        }

        if (saeAge < 0) {
            saeAge = 0;
        }

        if (yearAge < 0) {
            yearAge = 0;
        }

        sb.append(manAge).append("\n");
        sb.append(saeAge).append("\n");
        sb.append(yearAge).append("\n");

        System.out.println(sb.toString());

    }
}

느낀점

겨우 맞혔다.. 피곤할때 문제풀지 말자

profile
꾸준함의 가치를 믿는 개발자

0개의 댓글