📃백준 2753
📅 윤년
조건문
https://www.acmicpc.net/problem/2753
🔷 submission code
## 백준
## 윤년
## 조건문, 구현
'''
연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.
[윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때] 또는 [400의 배수]일 때이다.
예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다.
1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다.
하지만, 2000년은 400의 배수이기 때문에 윤년이다.
'''
def yoonY(n):
pass
if (n % 4 == 0 and n % 100 != 0 ) or n % 400 == 0:
print('1')
else:
print('0')
if __name__ == '__main__':
year = int(input())
yoonY(year)
백준 2753번 문제는 입력한 년도가 윤년에 해당되는지 출력해주는 문제이다. 윤년인 경우 1을 아닌 경우 0을 출력해주는 게 목표이다. 문제에서 제시되어 있는 조건을 그대로 코드로 구현했다. python if를 사용해서 조건을 주었고 and와 or 연산자를 문제에서 제시되어있는 글자 그대로 조건으로 반영해서 작성했다. 이렇게 작성하면 문제를 통과할 수 있다. 그런데 다른 접근 방법으로 문제 시간을 단축할 수 있는 코드가 있다.
🔶 추가 참고할 만한 코드 _ 여사건 접근
##* 여사건으로 접근한 풀이
## 이 코드가 시간이 더 짧음
def complementaryEvent(n):
if n % 4 == 0:
if (n % 100 == 0) and (n % 400 != 0):
print(0)
else:
print(1)
else:
print(0)
if __name__ == '__main__':
year = int(input())
complementaryEvent(year)
조건에 대한 여산건으로 접근을 한 코드이다. 제시되어 있는 조건을 그대로 코드로 구현한 게 위의 제출한 코드라면 참고 코드는 반대로 조건의 여사건을 코드로 구현했다. 제출 코드는 조건에 해당되면 윤년이어서 1을 출력했지만 참고 코드는 윤년이 아닌 경우가 조건이며 0을 출력하도록 되어 있다. 위 추가 코드가 시간상 더 짧게 돌아가는 코드이다.
🤔💬 🧐🧾
소스코드 링크 : https://github.com/KwanHoo/Data-Structure__Algorithm/blob/main/Python/baekjoon/bronze/baek_2753.py
GitHub - KwanHoo/Data-Structure__Algorithm: Data structures and algorithms practice code, Backjoon submission code
Data structures and algorithms practice code, Backjoon submission code - GitHub - KwanHoo/Data-Structure__Algorithm: Data structures and algorithms practice code, Backjoon submission code
github.com
포스팅이 도움이 되셨다면 공감 과 구독 눌러주세요 💚
'Baekjoon > python' 카테고리의 다른 글
[백준 2884] 알람시계 _ python 풀이 (0) | 2022.04.17 |
---|---|
[백준 9498] 시험성적 _ python 풀이 (0) | 2022.04.17 |
[백준 12852] 1로 만들기 2 _ python 풀이 (0) | 2022.04.15 |
[백준 2011번] 암호코드 _ (DP) python 풀이 (0) | 2022.04.15 |
[백준 2480번] 주사위 세개 _ (조건문) python 풀이 (0) | 2022.04.13 |