문제 

연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.

윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.


예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다.
1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 
하지만, 2000년은 400의 배수이기 때문에 윤년이다.

해석

조건문의 조건 작성에 유의하면서 구현하면 되는 문제이다.

 


 

풀이

def solution():
    year = int(input())
    if year % 4 == 0 and (year % 100 != 0 or year % 400 == 0):
        print('1')
    else:
        print('0')

solution()
  • 연도가 4의 배수이면서 100의 배수가 아니거나, 400의 배수인 경우 윤년임
  • 출력이 목적이므로 return 없이 print()만 사용
  • 문제의 흐름이 단순하기 때문에 함수로 감싸도 되고 안 감싸도 무방  함수로 만들어보려고 경험삼아 감싸봄

 

 

요약

실행 시간 메모리 사용
40ms 32412KB

 

 

 


 

 

 

끝!

 

'Study > Algorithm' 카테고리의 다른 글

[백준] 2440번: 별 찍기 - 3  (0) 2025.04.28
[백준] 2439번: 별 찍기 - 2  (0) 2025.04.28
[백준] 2475번: 검증수  (0) 2025.04.24
[백준] 2438번: 별 찍기 - 1  (0) 2025.04.24
[백준] 6840번: Who is in the middle?  (4) 2025.04.24