Roel Notebook

[Swift]프로그래머스 2016

by Roel Downey
728x90
반응형

2016

 

문제 

- 문제 링크: 프로그래머스

 

 

풀이

func solution(_ a:Int, _ b:Int) -> String {
    var answer = ["THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED"]
    var month = [31,29,31,30,31,30,31,31,30,31,30,31]
    var total = 0
    var monthValue = a - 1
    for index in 0..<monthValue {
        if index > monthValue {
            break
        }
        total += month[index]
    }
    
    total += b
    return answer[total % 7]
}

/*
 
 2016년 1월 1일 금요일
 
 1월 1일이 금요일 이고 배열은 0번째부터 시작이므로 1번째의 day값을 금요일로 맞춰서 저장해 놓았다.
 1~12월까지의 총 일수를 배열에 저장한다.
 만약 5월 24일이라면 배열상으로 3번째(4월)까지의 일수를 더한 후 나머지 24일을 더하여 총일수를 구한다.
 모두 더한 값을 7로 나누고 나머지값을 요일이 저장되어있는 answer배열에 넣으면 답이 나온다.
 
 */

solution(5, 24)
solution(1, 1)
solution(1, 2)
solution(1, 3)
solution(1, 4)
solution(1, 31)
solution(2, 1) // mon

 

728x90
반응형

블로그의 정보

What doing?

Roel Downey

활동하기