반응형
programmers.co.kr/learn/courses/30/lessons/12901?language=java
코딩테스트 연습 - 2016년
2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까
programmers.co.kr
코드
public String solution(int a, int b) {
String answer = "";
//a월 전달 까지 몇일 있는지 세어놓고 b를 더해준다
int before = 0;
switch (a){
case 1: before = 0; break;
case 2: before = 31; break;
case 3: before = 31 + 29; break;
case 4: before = 31 + 29 + 31; break;
case 5: before = 31 + 29 + 31 + 30; break;
case 6: before = 31 + 29 + 31 + 30 + 31; break;
case 7: before = 31 + 29 + 31 + 30 + 31 + 30 ; break;
case 8: before = 31 + 29 + 31 + 30 + 31 + 30 + 31; break;
case 9: before = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31; break;
case 10: before = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30; break;
case 11: before = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31; break;
case 12: before = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30; break;
}
before += b - 1; //올해의 몇번째 날인지 알 수 있음
// ex) 1월3일 입력시 before = 3 인 상태 (올해 3번째 날)
//올해의 첫번째 날은 금요일
int day = before % 7;
String[] days = new String[]{"FRI","SAT","SUN","MON","TUE","WED","THU"};
answer = days[day];
return answer;
}//method
반응형
'개발 > 알고리즘' 카테고리의 다른 글
codeup 1430 기억력 테스트 2 (0) | 2021.03.15 |
---|---|
[프로그래머스] 3진법 뒤집기 (0) | 2021.03.13 |
프로그래머스 체육복 (0) | 2021.03.11 |
[USACO] 소가 길을 건너간 이유 3 백준 14469 (0) | 2021.02.26 |
[USACO] Teleportation JAVA (0) | 2021.02.25 |
최근댓글