코딩문제풀이/파이썬
[프로그래머스] 개인정보 수집 유효기간 (파이썬)
오늘밤공부
2023. 2. 27. 12:03
반응형
🗓️ 문제 설명
- 고객의 약관 동의를 얻어서 수집된 1 ~ n번으로 분류되는 개인정보 n개가 있습니다.
- 약관 종류는 여러가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다.
- 약관의 종류마다 유효기간이 다르며, 유효기간이 지나면 개인정보를 파기해야 합니다.
- 모든 달이 28일까지 있다고 가정하고, 오늘 날짜가 주어질 때, 파기해야 하는 개인정보의 번호를 반환하세요.
- 제한 사항
- today = 'YYYY.MM.DD' 형태
- 1 ≤ terms의 길이 ≤ 20
- 약관종류는 A~Z 중 알파벳 대문자 하나이며, 중복 없음
- 1 ≤ privacies의 길이 ≤ 100
- privacies[i]는 i+1번 개인정보의 수집 일자와 약관종류를 나타냄
- terms, privacies의 원소는 '약관종류 유효기간' 형태의 약관종류와 유효기간을 공백 하나로 구분하는 문자열
- 2000 ≤ YYYY ≤ 2022
- 1 ≤ MM ≤ 12
- 1 ≤ DD ≤ 28
- 파기해야 할 개인정보가 하나 이상 존재하는 입력만 주어짐
- 입출력 예시
today | terms | privacies | result |
"2022.05.19" | ["A 6", "B 12", "C 3"] | ["2021.05.02 A", "2021.07.01 B", "2022.02.19 C", "2022.02.20 C"] | [1, 3] |
"2020.01.01" | ["Z 3", "D 5"] | ["2019.01.01 D", "2019.11.15 Z", "2019.08.02 D", "2019.07.01 D", "2018.12.28 Z"] | [1, 4, 5] |
💻 코드
최종 코드
코드 풀이
다른 사람 풀이
더보기

풀이 1번

- 1번줄 : 주어진 날짜를 일수로 변환하는 함수 선언
- 2번줄 : "YYYY.MM.DD" 형태의 날짜를 '.'을 기준으로 나누어 year, month, day에 정수(int)로 저장
- 3번줄 : year, month, day를 일수로 변환하여 반환
- 6번줄 : 주어진 약관정보를 {약관 : 일수} 형태로 저장
- 7번줄 : 1에서 선언한 함수를 통해 오늘의 일수를 저장
- 8~10번줄 : 개인정보를 인덱스와 값으로 나누어 개인정보의 일수와 약관일수를 더한 값이 오늘 일수보다 작으면 (인덱스+1)을 저장
반응형