2016년 ----------
public String solutionOne(int a, int b) {
String answer = "";
String[] day = {"FRI", "SAT", "SUN", "MON", "TUE", "WED", "THU"}; // 2016년 1월 1일은 금요일이기 때문에 배열의 값을 금요일부터 시작
int[] dateNum = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};; // 1월부터 12월까지 일수를 저장
int dateAll = 0; // 총 일수를 구할 변수
for (int i = 0; i < a - 1; i++) { // 입력 받은 달 보다 한달 전(a - 1)까지의 모든 일수를 구해줌
dateAll = dateAll + dateNum[i];
}
dateAll += (b - 1); // 원하는 달의 원하는 날짜 값 - 1을 더해줌
answer = day[dateAll % 7];
return answer;
}
나누어 떨어지는 숫자 배열 -------
public int[] solutionTwo(int[] arr, int divisor) { // arr의 element 중 divisor로 나누어 떨어지는 값들을 구하는 문제
ArrayList<Integer> temp = new ArrayList<Integer>(); // 기본 배열의 경우에는 크기가 늘어나지 않기 때문에 ArrayList로 선언
for (int i = 0; i < arr.length; i++) {
if (arr[i] % divisor == 0) { // 나머지가 0인 arr의 element만 temp에 추가함
temp.add(arr[i]);
}
}
if (temp.isEmpty()) {
temp.add(-1); // 빈 배열일 경우(나누어 떨어지는 값이 없을 경우)
}
int[] answer = new int[temp.size()]; // 새로운 int 타입 배열을 만들어 값을 넣어줌
for (int i = 0; i < temp.size(); i++) {
answer[i] = temp.get(i);
}
Arrays.sort(answer);
return answer;
}
수박수박수박수박수 ---------
public String solutuonThree(int n) {
String answer = "";
for (int i = 0; i < n; i++) {
if (i % 2 == 0) { // 홀수인지 짝수인지 판별
answer += "수";
}
else {
answer += "박";
}
}
return answer;
완주하지 못한 선수 ----------
public String solutionFour(String[] participant, String[] completion) {
String answer = "";
Arrays.sort(participant); // 두 배열을 모두 정렬하여 같은 인덱스인데 값이 다른 경우 그 값을 반환
Arrays.sort(completion);
for (int i = 0; i < participant.length; i++)
{
if (i == participant.length - 1) {
answer = participant[i];
return answer;
}
else if(!(participant[i].equals(completion[i])))
{
answer = participant[i];
return answer;
}
}
return answer;
}