본문 바로가기

카테고리 없음

(미완성 정답률 95%)개인정보 수집 유효기간-2023 KAKAO BLIND RECRUITMENT

import java.util.HashMap;
import java.util.ArrayList;

class Solution {
    public int[] solution(String today, String[] terms, String[] privacies) {

        String[] todayArr = today.split("\\.");
        String year = todayArr[0];
        String month = todayArr[1];
        String day = todayArr[2];
        ArrayList<Integer> dataArr = new ArrayList<Integer>();
        HashMap<String, String> termsMap = new HashMap<String, String>();
        for (int i = 0; i < terms.length; i++) {
            String[] tmpArr = terms[i].split(" ");
            termsMap.put(tmpArr[0], tmpArr[1]);
        }

        for (int i = 0; i < privacies.length; i++) {
            String[] tmpArr = privacies[i].split(" ");
            String[] myDate = tmpArr[0].split("\\.");
            String tmpYear = myDate[0];
            String tmpMonth = myDate[1];
            String tmpDay = myDate[2];

            String alpha = tmpArr[1];
            int getTerm = Integer.parseInt(termsMap.get(alpha));
            int tmpIntYear = Integer.parseInt(tmpYear);
            int tmpIntDay = Integer.parseInt(tmpDay);
            int tmpIntMonth = Integer.parseInt(tmpMonth);
            int tmpPlusYear = 0;
            tmpIntMonth = tmpIntMonth + getTerm;

            if (tmpIntMonth > 12) {
                tmpPlusYear = tmpIntMonth / 12;
                tmpIntYear += tmpPlusYear;
                tmpIntMonth %= 12;
                tmpYear = String.valueOf(tmpIntYear);
                tmpMonth = String.valueOf(tmpIntMonth);
            } else {
                tmpMonth = String.valueOf(tmpIntMonth);
            }

           if (tmpIntYear < Integer.parseInt(year) ||
    (tmpIntYear == Integer.parseInt(year) && tmpIntMonth < Integer.parseInt(month)) ||
    (tmpIntYear == Integer.parseInt(year) && tmpIntMonth == Integer.parseInt(month) && tmpIntDay <= Integer.parseInt(day))) {
    dataArr.add(i+1); 
}
            
        }

        int[] answer = new int[dataArr.size()];
        for (int i = 0; i < dataArr.size(); i++) {
            answer[i] = dataArr.get(i);
        }
        return answer;
    }
}