Study/Algorithm

[java]프로그래머스-2016년

의미없는 시간은 없다. 2022. 6. 24. 13:21

프로그래머스 알고리즘 문제 中 '2016년' 문제

2016년 1월 1일은 금요일입니다.

 

 

- 풀이요악

알고리즘 문제인 만큼 여러가지 풀이법이 있지만 내가 사용한방법은 java.util에있는 Calendar 클래스를 사용하였다.

 

- 방법.

1.먼저 프로그래머스에는 Calendar 사용을 위한 util을 import해주지 않았기 때문에, 선언

2.Calendar.DAY_OF_WEEK를 사용하면 요일을 반환한다(일요일:1,월요일2,화요일3,...토요일7)

3.입력받은 날짜를 get(2016,입력받은값1-1, 입력받은값2) 하면 나오는 값은 숫자다.

4. 숫자값을 요일로 변환한다.

 

다른 간단한 방법이 있겠지만 지금으로썬 이게 최선..

import java.util.*;
class Solution {
    public String solution(int a, int b) {
       String day = "" ; 

       Calendar cal = Calendar.getInstance(); 
       cal.set(2016,a -1,b);
       int dayNum = cal.get(Calendar.DAY_OF_WEEK); 
       switch(dayNum){ 
         case 1: day = "SUN"; 
         break; 
         case 2: day = "MON"; 
         break; 
         case 3: day = "TUE"; 
         break; 
         case 4: day = "WED"; 
         break; 
         case 5: day = "THU"; 
         break; 
         case 6: day = "FRI";
         break; 
         case 7: day = "SAT"; 
                  break; 
       } 
       return day ;
    }
}

 

반응형