๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/12901
2016๋
1์ 1์ผ์ ๊ธ์์ผ์
๋๋ค. 2016๋
a์ b์ผ์ ๋ฌด์จ ์์ผ์ผ๊น์? ๋ ์ a , b๋ฅผ ์
๋ ฅ๋ฐ์ 2016๋
a์ b์ผ์ด ๋ฌด์จ ์์ผ์ธ์ง ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํ์ธ์. ์์ผ์ ์ด๋ฆ์ ์ผ์์ผ๋ถํฐ ํ ์์ผ๊น์ง ๊ฐ๊ฐ
SUN,MON,TUE,WED,THU,FRI,SAT
์
๋๋ค. ์๋ฅผ ๋ค์ด a=5, b=24๋ผ๋ฉด 5์ 24์ผ์ ํ์์ผ์ด๋ฏ๋ก ๋ฌธ์์ด "TUE"๋ฅผ ๋ฐํํ์ธ์.
์ ํ ์ฌํญ
- 2016๋ ์ ์ค๋ ์ ๋๋ค.
- 2016๋ a์ b์ผ์ ์ค์ ๋ก ์๋ ๋ ์ ๋๋ค. (13์ 26์ผ์ด๋ 2์ 45์ผ ๊ฐ์ ๋ ์ง๋ ์ฃผ์ด์ง์ง ์์ต๋๋ค.)
์ ์ถ๋ ฅ ์
a | b | result |
5 | 24 | "TUE" |
๋ด๊ฐ ์์ฑํ ์ฝ๋
class Solution {
public String solution(int a, int b) {
String answer = "";
int[] days = {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int totalDays = 0;
for (int i = 1; i < a; i++) {
totalDays += days[i];
}
totalDays += b;
String[] week = {"FRI", "SAT", "SUN", "MON", "TUE", "WED", "THU"};
answer = week[(totalDays-1) % 7];
return answer;
}
}
์ฝ๋ ์ค๋ช
- int[ ] days = {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31} : ๊ฐ ์์ ์ผ์๋ฅผ ์ ์ฅํ days ๋ฐฐ์ด์ ์์ฑํ๋ค. 1์๋ถํฐ 12์๊น์ง์ ์ผ์๋ฅผ ์์๋๋ก ์ ์ฅํ๊ณ , ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ๊ฐ์ ์ฌ์ฉํ์ง ์๋๋ค.
- int totalDays = 0 : ์ด์ผ์๋ฅผ ๋์ ํ์ฌ ๊ณ์ฐํ๊ธฐ ์ํ ๋ณ์ totalDays๋ฅผ ์์ฑํ๊ณ 0์ผ๋ก ์ด๊ธฐํํ๋ค.
- for (int i = 1; i < a; i++) { totalDays += days[i] } : for๋ฌธ์ ์ฌ์ฉํด์ 1์๋ถํฐ a-1์๊น์ง์ ์ผ์๋ฅผ totalDays์ ๋ํ๋ค. days[i]๋ i์์ ์ผ์๋ฅผ ์๋ฏธํ๋ค.
- totalDays += b : totalDays ๋ณ์์ b ๊ฐ์ ๋ํ๋ค. ์ ๋ ฅ๋ ๋ ์ง๊น์ง์ ์ด์ผ์๋ฅผ ๊ณ์ฐํ๋ค.
- String[ ] week = {"FRI", "SAT", "SUN", "MON", "TUE", "WED", "THU"} : ์์ผ์ ์ ์ฅํ week ๋ฐฐ์ด์ ์์ฑํ๋ค. ๊ธ์์ผ์ ๊ธฐ์ค์ผ๋ก ์์ผ ์์๋ฅผ ์ ์ฅํ๋ค.
- anwer = week[(totalDays - 1) % 7] : (totalDays - 1) % 7์ ๊ณ์ฐํ์ฌ, week ๋ฐฐ์ด์ ํด๋น ์ธ๋ฑ์ค ๊ฐ์ answer์ ์ ์ฅํ๋ค. totalDays - 1์ ๋ ์ง ๊ณ์ฐ์ ๋ฐฐ์ด ์ธ๋ฑ์ค์ ๋ง์ถ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
'ํ๋ก๊ทธ๋๋จธ์ค > ์๊ณ ๋ฆฌ์ฆ ํ์ด(Java)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค_์นด๋ ๋ญ์น(Java) (4) | 2024.12.16 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค_๋ช ์์ ์ ๋น(1) (1) | 2024.12.12 |
ํ๋ก๊ทธ๋๋จธ์ค_์ฝ๋ผ ๋ฌธ์ (0) | 2024.12.11 |
ํ๋ก๊ทธ๋๋จธ์ค_ํธ๋ ํ์ดํธ ๋ํ (0) | 2024.12.10 |
ํ๋ก๊ทธ๋๋จธ์ค_๊ฐ์ฅ ๊ฐ๊น์ด ๊ฐ์ ๊ธ์ (0) | 2024.12.09 |