반응형
Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
12-30 00:09
관리 메뉴

ImJay

[파이썬/Python] 백준 2753번 윤년 본문

Solved.ac - Python/Bronze V

[파이썬/Python] 백준 2753번 윤년

ImJay 2022. 9. 13. 12:30
반응형

[파이썬/Python] 백준 2753번 윤년

www.acmicpc.net/problem/2753

 

2753번: 윤년

연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서

www.acmicpc.net


문제

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

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

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

코드

year = int(input())

if(year % 4 == 0 and (year % 100 != 0 or year % 400 == 0) ):
    print(1)
else:
    print(0)

풀이

1. 연도를 입력 받습니다.

year = int(input())

 

2. 윤년이면 1, 아니면 0을 출력합니다.

if(year % 4 == 0 and (year % 100 != 0 or year % 400 == 0) ):
    print(1)
else:
    print(0)

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

if(year % 4 == 0 and (year % 100 != 0 or year % 400 == 0))

윤년은 (연도가 4의 배수) and { (100의 배수가 아닐 때) or (400의 배수일 때) } 이다.

윤년은 (year % 4 == 0) and { (year % 100 != 0) or (400의 배수일 때) } 이다.

느낀 점

문제의 조건이 몇개인지, 조건이 어떻게 묶여있는지 잘 살펴보아야 한다.

반응형
Comments