2016
質問する
問題の説明
2016年1月1日は金曜日です.2016年a月b日は何曜日ですか?2つの数a,bを入力し,2016年a月b日が曜日である関数を返し,解を完成する.日曜日の名称は日曜日から土曜日までSUN、MON、TUE、WED、THU、FRI、SAT
.たとえば、a=5、b=24の場合は、5月24日が火曜日であるため、文字列「TUE」を返します.
せいげんじょうけん
2016年は閏年です.
2016年a月b日は実在の日です(13月26日または2月45日などの日付は提供されません)
I/O例
a b result
5 24 "TUE"
コード#コード#
class Solution {
public String solution(int a, int b) {
// 1. 나눈 나머지에 따른 요일 저장 배열.
String days[] = {"FRI","SAT","SUN","MON","TUE","WED","THU"};
// 2. 매 달의 일 수, 윤달이므로 2월은 29일까지 존재.
int month[] = {0,31,29,31,30,31,30,31,31,30,31,30,31};
// 3. 총 일수의 합
int sum = 0;
// 4. a 이전 달 까지의 일수를 모두 더해준다.
for(int i =1;i<a;i++){
sum+=month[i];
}
// 5. a달의 b일을 더해준다.
sum+=b;
// 6. 7의 배수인 경우, 모두 목요일이다.
if(sum % 7 == 0) return days[6];
// 7. 나머지는 인덱스에 따라 요일 출력, 0번 인덱스부터 시작하므로 -1을 해준다.
return days[(sum % 7)-1];
}
}
Reference
この問題について(2016), 我々は、より多くの情報をここで見つけました https://velog.io/@jjems/2016テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol