[프로그래머스 | Lv.1] 2016년

2024. 3. 26. 12:00·Data structure & Algorithm/프로그래머스

 

문제 설명

 

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"를 반환하세요.

 

 

제한 사항

 

(1)

2016년은 윤년입니다.

 

(2)

2016년 a월 b일은 실제로 있는 날입니다.

(13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다)

 

 

입출력 예

 

a b result
5 24 "TUE"

 

 

 

나의 풀이

func solution(_ a:Int, _ b:Int) -> String {
    let week = ["THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED"]
    
    return week[getWeek(a, b)]
}

func getWeek(_ a: Int, _ b: Int) -> Int {
    let calendar = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
    var day = 0
    
    for i in 0...a-1 {
        day += (i == a-1) ? b : calendar[i]
    }
    
    return day % 7
}

 

 

 

'Data structure & Algorithm > 프로그래머스' 카테고리의 다른 글

[프로그래머스 | Lv.1] 기사단원의 무기  (2) 2024.03.26
[프로그래머스 | Lv.1] 모의고사  (0) 2024.03.26
[프로그래머스 | Lv.1] 카드 뭉치  (0) 2024.03.25
[프로그래머스 | Lv.1] 추억 점수  (0) 2024.03.25
[프로그래머스 | Lv.1] 명예의 전당 (1)  (0) 2024.03.25
'Data structure & Algorithm/프로그래머스' 카테고리의 다른 글
  • [프로그래머스 | Lv.1] 기사단원의 무기
  • [프로그래머스 | Lv.1] 모의고사
  • [프로그래머스 | Lv.1] 카드 뭉치
  • [프로그래머스 | Lv.1] 추억 점수
ohhoooo
ohhoooo
  • ohhoooo
    ohhoooo
    ohhoooo
  • 전체
    오늘
    어제
    • 전체 글 (84)
      • iOS (1)
      • Swift (1)
      • Data structure & Algorithm (67)
        • 프로그래머스 (67)
      • 기타 (15)
        • TIL (2)
        • Android (13)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
ohhoooo
[프로그래머스 | Lv.1] 2016년
상단으로

티스토리툴바