https://school.programmers.co.kr/learn/courses/30/lessons/150370
프로그램 제작자
코드 중심 개발자를 고용하십시오. 배치 기반 위치 매칭. 프로그래머의 개발자별 프로필에 가입하고 기술 호환성이 좋은 회사와 연결하십시오.
Programmer.co.kr
def solution(today, terms, privacies):
t_y, t_m, t_d = (int(a) for a in today.split("."))
answer = ()
for i, p in enumerate(privacies):
y, m, d = (int(a) for a in p(:-2).split("."))
for t in terms:
if p(-1) == t(0):
m += int(t(2:))
break
# 월
if m > 12:
if m % 12 == 0:
y += (m - 12) // 12
m = 12
else:
y += m // 12
m = m % 12
# 일
if d == 1:
if m == 1:
y -= 1
m = 12
else:
m -= 1
d = 28
else:
d -= 1
# today가 위 날짜보다 크면 유효기간이 지난 것
if t_y > y:
answer.append(i+1)
elif t_y < y:
continue
else:
if t_m > m:
answer.append(i+1)
elif t_m < m:
continue
else:
if t_d > d:
answer.append(i+1)
else:
continue
answer.sort()
return answer
