데이터사이언스 기록기📚

[백준/Python] 25286번(구현, 많은 조건 분기)_11월 11일 본문

Coding Test/백준(Python)

[백준/Python] 25286번(구현, 많은 조건 분기)_11월 11일

syunze 2023. 2. 14. 15:47

📌문제 유형

구현, 많은 조건 분기(브론즈III)

 

📌문제

 

25286번: 11월 11일

11월 11일에는 농업인의 날, 가래떡 데이, 보행자의 날, 대한민국 해군 창설 기념일, 유엔참전용사 추모의 날, 빼빼로 데이 등 다양한 의미를 가진 날이다. 성현이는 11월 11일의 11일 전은 10월 31일,

www.acmicpc.net

 

📌나의 문제풀이

  • strptime 일 때 표현 조건
    • %Y : 네 자리 수 년도 / %y : 두 자리 수 년도
    • %m : 0이 포함 된 달 / %M : 0d이 포함 된 시간
    • %d : 0이 포함 된 날짜
  • 전 시간 나타낼 때, 현재시간 - timedelta 사용
 

[Python] strftime과 strptime

Python을 사용하여 개발을 하다 보면 날짜를 다뤄야 하는 일이 정말 많다. 항상 검색하여 사용하다 한번 정리해보자!라는 생각으로 글을 써본다. 생각해보니 평소에 제일 많이 사용하는 두 함수가

dev-jy.tistory.com

from datetime import datetime, timedelta
n = int(input())

for i in range(n):
    y,m = map(str,input().split())
    if int(m) < 10:
        m = '0'+m
    now = datetime.strptime(y+m+m,'%Y%m%d')
    before = now - timedelta(days=int(m))
    print(before.year,before.month, before.day)

 

📌다른 사람의 문제풀이

  • 예시만 풀릴 수 있는 풀이
 

백준 BAEKJOON 25286번 11월 11일 [PYTHON/파이썬]

백준 BAEKJOON 25286번 11월 11일 [PYTHON/파이썬] https://www.acmicpc.net/problem/25286 25286번: 11월 11일 11월 11일에는 농업인의 날, 가래떡 데이, 보행자의 날, 대한민국 해군 창설 기념일, 유엔참전용사 추모의

calkolab.tistory.com

for _ in range(int(input())) :
    y, m = map(int, input().split())
    check = False	# 윤년인지 아닌지 확인하는 변수
    if (y % 4 == 0 and y % 100 != 0) or (y % 400 == 0) :
        check = True	# 윤년이면 True로 변경
    
    if check :	# 윤년
        days = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
    else :	# 윤년 X
        days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
    
    if m == 1 :
        print(y-1, m+11, days[m+10])
    else :
        print(y, m-1, days[m-2])
728x90
Comments