백준 알고리즘 2753번 파이썬

링크텍스트

첫번째 푼 문제는 아니지만 첫 게시글로 좋을 것 같아 풀이를 적어봅니다.

처음 쓴 코드


test=int(input())

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

        

4랑 400으로 나눴을 때 나머지가 0 이거나 100으로 나눴을 때 0이 아닌 것
으로 이해해서 조건들은 묶지 않고 나열했습니다.

처음에 몇 번 삽질 했을 때는 뭘까뭘까 했는데
문제를 다시 잘 읽고 조건을 정리했습니다.

(연도가 4의 배수이거나 100의 배수가 아닐 때) 또는 (연도가 400의 배수일 때)
로 묶을 수 있었습니다.

test=int(input())

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

그래서 이렇게 수정해서 맞았습니다.

좋은 웹페이지 즐겨찾기