코딩 테스트

(Java) 프로그래머스 2016

로승리 2021. 11. 13. 06:43

내장 함수를 이용해 간단하게 풀었다.

다른 분 코드를 보니 내장 함수 없이 구현했는데 날짜 관련해서는 자주 헷갈려서 저렇게 할 생각을 못했던 것 같다.

한번 정리해둬야지...


최종 코드

import java.text.ParseException;
import java.time.LocalDate;
class Solution {
    public String solution(int a, int b) throws ParseException{
        String answer = "";

        LocalDate date = LocalDate.of(2016, a, b);
        answer = date.getDayOfWeek().toString().substring(0,3);
        
        return answer;
    }
}

다른 분 코드

public String getDayName(int a, int b) {
        String answer = "";
        String[] day = { "FRI", "SAT", "SUN", "MON", "TUE", "WED", "THU" };
        int[] date = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
        int allDate = 0;
        for (int i = 0; i < a - 1; i++) {
            allDate += date[i];
        }
        allDate += (b - 1);
        answer = day[allDate % 7];

        return answer;
    }