https://school.programmers.co.kr/learn/courses/30/lessons/12901
๐ ํ์ด 3 : LocalDate ํด๋์ค
`LocalDate.of(year, month, dayOfMonth)`โจ
import java.time.LocalDate;
class Solution {
// 2016๋
a์ b์ผ์ด ๋ฌด์จ ์์ผ์ธ์ง ๋ฐํ(SUN~SAT)
public String solution(int a, int b) {
/* ๋ ์ง ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ์์ผ ๋ฌธ์์ด์ ์ฒซ 3๊ธ์๋ง ์ถ์ถ */
return LocalDate.of(2016, a, b).getDayOfWeek().toString().substring(0, 3);
}
}
๐ ํ์ด 2 : Calendar ํด๋์ค
`Calendar cal = new Calendar...`
import java.util.Calendar;
import java.util.Locale;
class Solution {
// 2016๋
a์ b์ผ์ด ๋ฌด์จ ์์ผ์ธ์ง ๋ฐํ(SUN~SAT)
public String solution(int a, int b) {
/* [1] Calendar ๊ฐ์ฒด๋ฅผ ์์ฑํ์ฌ 2016๋
a์ b์ผ ์ค์ */
Calendar cal = new Calendar.Builder()
.setCalendarType("iso8601") // ISO 8601 ํ์ค์ ์บ๋ฆฐ๋ ํ์
์ค์
.setDate(2016, a - 1, b) // ์ฐ๋, ์(0๋ถํฐ ์์), ์ผ ์ค์
.build(); // Calendar ๊ฐ์ฒด ๋น๋
/* [2] ์์ฑ๋ Calendar ๊ฐ์ฒด์ ์์ผ์ ์งง์ ํ์์ผ๋ก ํ๊ตญ์ด๋ก ํ์ํ ํ ๋๋ฌธ์๋ก ๋ณํํ์ฌ ๋ฐํ */
return cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, new Locale("ko-KR")).toUpperCase();
}
}
๐ ํ์ด 1 : ๋ฐฐ์ด
class Solution {
// 2016๋
a์ b์ผ์ด ๋ฌด์จ ์์ผ์ธ์ง ๋ฐํ(SUN~SAT)
public String solution(int a, int b) {
/* [1] ๋ฐฐ์ด ์ธํ
*/
String[] daysOfWeek = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"}; // ์์ผ ๋ฐฐ์ด (SUN ~ SAT)
int[] daysInMonth = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // ๊ฐ ์์ ์ผ์ ๋ฐฐ์ด (์ค๋
)
/* [2] ์ด ์ผ์ ๊ณ์ฐ */
int totalDays = 0;
for (int i = 0; i < a - 1; i++) {
totalDays += daysInMonth[i]; // a-1์ ์ผ์ ํฉ์ฐ
}
totalDays += b; // b์ผ
/* [3] ์์ผ ์ธ๋ฑ์ค ๊ณ์ฐ */
int idx = (totalDays + 4) % 7; // 1์ 1์ผ ๊ธ์์ผ(5)์ ๋ํ ์กฐ์ โจ
return daysOfWeek[idx]; // ํด๋น ์์ผ ๋ฐํ
}
}
'๐ท์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ์ฑ๊ฒฉ ์ ํ ๊ฒ์ฌํ๊ธฐ (0) | 2024.09.02 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ํคํจ๋ ๋๋ฅด๊ธฐ(๋งจํดํผ ๊ฑฐ๋ฆฌ) (0) | 2024.09.01 |
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ํฐ์ผ๋ชฌ(Stream.distinct()) (0) | 2024.08.17 |
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ์นด๋ ๋ญ์น(LinkedList(Queue)) (0) | 2024.08.17 |