예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다.
당신은 오늘 날짜로 파기해야 할 개인정보 번호들을 구하려 합니다.
모든 달은 28일까지 있다고 가정합니다.
다음은 오늘 날짜가 2022.05.19일 때의 예시입니다.
따라서 파기해야 할 개인정보 번호는 [1, 3]입니다.
오늘 날짜를 의미하는 문자열 today, 약관의 유효기간을 담은 1차원 문자열 배열 terms와 수집된 개인정보의 정보를 담은 1차원 문자열 배열 privacies가 매개변수로 주어집니다. 이때 파기해야 할 개인정보의 번호를 오름차순으로 1차원 정수 배열에 담아 return 하도록 solution 함수를 완성해 주세요.
def solution(today, terms, privacies):
answer = []
termarr = []
privacies1 = [] #날짜
td = today.split('.')
privaciesDay = []
privaciesDayResult = []
term = {}
for i in range(len(td)):
td[i] = int(td[i]) #td = [년, 월, 일] 숫자형태 입력
tdresult = td[0]*28*12 + td[1]*28 + td[2] #오늘 날짜를 일 수 로 계산
for i in terms:
termarr.append(i.split(" ")) #terms를 list 형식으로 바꿈
for i in privacies:
privacies1.append(i[:10]) #privacies1에 날짜만 기입
for i in privacies1:
privaciesDay.append(i.split("."))
for i in privaciesDay:
privaciesDayResult.append(int(i[0])*12*28+int(i[1])*28+int(i[2])) #가입 날짜 일 수 로 계산
for i in range(len(termarr)):
term[termarr[i][0]] = int(termarr[i][1]) #dict 형식으로 term 정리
print(term)
print(privaciesDayResult)
for i in range(len(privacies)):
for j in range(len(termarr)):
if termarr[j][0] in privacies[i]:
privaciesDayResult[i] += term[termarr[j][0]]*28
print(privaciesDayResult)
for i in range(len(privaciesDayResult)):
if privaciesDayResult[i] <= tdresult:
answer.append(i+1)
return answer