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;
}
}
카테고리 없음