# 1924. 2007년

raindrop·2022년 9월 28일
0
post-custom-banner

백준 1924

풀이계획

  1. switch문 활용해서, 월을 넣으면 일수를 리턴하는 구문 구현
  2. x월이 주어지면, 1에서 x-1만큼 switch문을 반복적으로 돌면서 일수를 얻어내고, 이를 모두 더한다
  3. 위에서 구해진 값에 y를 더해 “총일수”를 구한다
  4. 총일수를 %7하여 요일을 알아낸다
let input = readLine()!.split(separator: " ")
let x = Int(input[0])!
let y = Int(input[1])!
let dayOfTheWeek = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"]
var totalDays = 0

func getDaysFrom(month: Int) -> Int {
    
    switch month {
    case 1, 3, 5, 7, 8, 10, 12: return 31
    case 4, 6, 9, 11: return 30
    case 2: return 28
    case 0: return 0
    default: print("wrong month value"); return 999
    }
}

for month in 0..<x {
    totalDays += getDaysFrom(month: month)
}
totalDays += y

print("\(dayOfTheWeek[totalDays % 7])")

switch문이 아니라 매달 일(day)수를 Array에 담아 풀었을 수도 있었을 것 같다.

post-custom-banner

0개의 댓글