๋ฐ์ํ
ํ๋ก๊ทธ๋๋จธ์ค LV.1 ๋ชจ์
2016๋
๋ฌธ์ ์ค๋ช
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" |
์ ์ถ
func solution(_ a:Int, _ b:Int) -> String {
let day = ["THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED"]
let monthDay = [ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
let totalDay = monthDay[0..<a-1].reduce(0, +) + b
return day[totalDay % 7]
}
1์ 1์ผ์ด ๊ธ์์ผ์ด๊ธฐ ๋๋ฌธ์ ๋ชฉ์์ผ๋ถํฐ ์์ผ์ ์ ์ฅํ day ๋ฐฐ์ด์ ์์ฑํ๋ค.
1์๋ถํฐ 12์๊น์ง ๊ฐ ๋ฌ์ด ๋ฉฐ์น ๊น์ง ์๋์ง ์ ์ฅ๋ monthDay ๋ฐฐ์ด์ ์์ฑํ๋ค.
์ ๋ ฅ๋ฐ์ ๋ ์ง๊น์ง ์ด๋ฉฐ์น ์ธ์ง ๊ตฌํด ๋ณ์ totalDay์ ์ ์ฅํ๋ค. (1์๋ถํฐ a-1์๊น์ง ๊ฐ ๋ฌ์ ๋ ์ง๋ฅผ ๋์ ํด์ ๋ํ ํ, b๋ฅผ ๋ํ๋ค)
์์ผ์ด ์ ์ฅ๋์ด ์๋ day ๋ฐฐ์ด์์ "์ด๋ ์ง๋ฅผ 7๋ก ๋๋ ๋๋จธ์ง" ์ธ๋ฑ์ค์ ์์ผ์ ๋ฐํํ๋ค.
๋ฐ์ํ
'โจ๏ธ Language > swift' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค LV.1] ๋๋์ด ๋จ์ด์ง๋ ์ซ์ ๋ฐฐ์ด (0) | 2023.01.31 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค LV.1] ๊ฐ์ด๋ฐ ๊ธ์ ๊ฐ์ ธ์ค๊ธฐ (0) | 2023.01.31 |
[Swift] ํ๋ก๊ทธ๋๋จธ์ค LV.0 ์น์์ด (1) (1) | 2023.01.20 |
[ํ๋ก๊ทธ๋๋จธ์ค LV.0] ๋ค์์ ์ฌ ์ซ์ (0) | 2023.01.20 |
[ํ๋ก๊ทธ๋๋จธ์ค LV.0] ์ฐ์๋ ์์ ํฉ (0) | 2023.01.20 |