관리 메뉴

솜씨좋은장씨

[BaekJoon] 16199번 : 나이 계산하기 (Python) 본문

Programming/코딩 1일 1문제

[BaekJoon] 16199번 : 나이 계산하기 (Python)

솜씨좋은장씨 2022. 5. 5. 16:49
728x90
반응형

코딩 1일 1문제! 오늘의 문제는 백준의 나이 계산하기 입니다.

 

16199번: 나이 계산하기

첫째 줄에 어떤 사람이 태어난 연도, 월, 일이 주어진다. 생년월일은 공백으로 구분되어져 있고, 항상 올바른 날짜만 주어진다. 둘째 줄에 기준 날짜가 주어진다. 기준 날짜도 공백으로 구분되어

www.acmicpc.net

👨🏻‍💻 코드 ( Solution )

from datetime import datetime


def american_age(birthday, standard):
    if standard.month - birthday.month > 0:
        age = standard.year - birthday.year
    elif standard.month == birthday.month:
        if standard.day - birthday.day >= 0:
            age = standard.year - birthday.year
        else:
            age = standard.year - birthday.year - 1
    else:
        age = standard.year - birthday.year - 1
    
    return age
    
    
def korean_age(birthday, standard):
    age = standard.year - birthday.year + 1
    
    return age
    
def year_age(birthday, standard):
    
    age = standard.year - birthday.year
    
    return age


def three_ages_used_in_korea(birthday, standard):
    birth_year, birth_month, birth_day = map(int, birthday.split())
    standard_year, standard_month, standard_day = map(int, standard.split())
    
    birthday = datetime(year=birth_year, month=birth_month, day=birth_day)
    standard = datetime(year=standard_year, month=standard_month, day=standard_day)
    
    age_1 = american_age(birthday, standard)
    age_2 = korean_age(birthday, standard)
    age_3 = year_age(birthday, standard)
    
    return age_1, age_2, age_3


if __name__ == "__main__":
    birthday = input()
    standard = input()
    age_1, age_2, age_3 = three_ages_used_in_korea(birthday, standard)
    
    print(age_1)
    print(age_2)
    print(age_3)

 

 

GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

Comments