특정 년도의 1월 1일의 요일이 언제인지 알 때
다음과 같이 언제가 어떤 날인지 알 수 있다.
import Foundation
let monthList = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] // 월별 일자
let weekOfDay = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"] // 1월 1일의 요일을 가장 맨 앞에 둔다.
var week = ""
let input = readLine()!.split(separator: " ").map{ Int(String($0))! }
var (month, day) = (input[0], input[1])
var totalDay = 0
for i in 0 ..< month - 1 {
totalDay += monthList[i]
}
totalDay += day - 1
week = weekOfDay[totalDay % 7]
while week != "SUN" {
totalDay -= 1
week = weekOfDay[totalDay % 7]
day -= 1
if day <= 0 {
month -= 1
day = monthList[month - 1]
}
}
print("\(week), \(month) 월 \(day) 일")
언젠가 다시 필요할 수도 있을 것 같아서 ..