반응형
연월일 순으로 구성된 8자리의 날짜가 입력으로 주어졌을 때 해당 날짜의 유효성을 판단하는 문제이다
if & else문을 통하여 1~12월을 벗어나거나 2월에서 28일을 벗어나는 등의 상황에서 유효하지 않다고 처리할 수 있겠지만 처리할 케이스가 많고 길어질 것 같아 datetime 라이브러리를 사용하였다
datetime.date와 try&except를 통해 유효하지않으면 -1 유효하면 형식에 맞게 출력하는 방식으로 작성하였다
통과하긴 했는데 실제시험에서도 datetime 라이브러리가 사용가능할 지 아닐지는 잘 모르게따
import datetime
# import sys
# sys.stdin = open("input.txt", "r")
T = int(input())
for ct in range(1, T+1):
arr = input()
year, month, day = arr[:4], arr[4:6], arr[6:]
try:
datetime.date(int(year), int(month), int(day))
print(f"#{ct} {year}/{month}/{day}")
except:
print(f"#{ct} -1")
반응형
'🔧알고리즘' 카테고리의 다른 글
[프로그래머스]체육복, 파이썬(python) (0) | 2022.06.09 |
---|---|
[swea]1204. 최빈수 구하기, 파이썬(python) (0) | 2022.05.26 |
[swea]1983. 조교의 성적 매기기, 파이썬(python) (0) | 2022.05.18 |
백준을 풀면 자동으로 내 깃허브에 커밋을? (BaekjoonHub, 백준허브) (0) | 2022.01.05 |
[BOJ]1747 소수&팰린드롬 (0) | 2022.01.04 |