카테고리 없음
[프로그래머스/javascript] 개인정보 수집 유효기간(구조분해할당 등 이용해서 다시 풀어보기)
_서리__
2023. 2. 4. 17:19
function solution(today, terms, privacies) {
var answer = [];
let obj ={};
let todayMon = today.split(".");
todayMon = (Number(todayMon[0])-1999)*12+Number(todayMon[1])
let todayDay = today[8]+today[9];
let term = terms.map((str)=>str.split(" "))
//terms 2차원배열로 만들기
//privacies 2차원배열로 만들기
//privacies[1]===terms[i] 찾아 달에 더하기
//privacies[1]은 .으로 나눠서 3차원배열로 만들어도 ㄱㅊ
//today보다 지난경우, answer에 추가
//2000~2022라 했으니... 개월로 바꾸는게 편할듯.
let privacy = privacies.map((str)=>str.split("."))
for(let i=0;i<privacy.length;i++){
privacy[i][0] = (Number(privacy[i][0])-1999)*12;
}
for(let i=0;i<privacies.length;i++){
for(let j=0;j<terms.length;j++){
if(privacies[i][11]===terms[j][0]){
obj[i+1] = privacy[i][0]+Number(privacy[i][1])+Number(term[j][1])
// Number(privacy[i][1])+Number(terms[j][1])
}
}
}
for(let key in obj){
if(obj[key]<todayMon){
answer.push(Number(key))
}
if(obj[key]===todayMon){
let privacyDay =
privacies[Number(key)-1][8]+privacies[Number(key)-1][9];
if(Number(todayDay)>=Number(privacyDay)){
answer.push(Number(key))
}
}
}
//276 252
return answer;
}