[프로그래머스/C++ 문제 풀이] Lv. 1 - 2016년

2024. 8. 6. 09:25·코딩테스트/프로그래머스 (Lv. 1)
728x90
반응형

문제 설명

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일같은 날짜는 주어지지 않습니다)

입출력 예


문제 풀이

이번 문제는 특정 날짜의 요일을 구하는 문제입니다.

 

간단히 생각해보면 같은 요일은 7일마다 반복되므로, 주어진 a와 b를 전부 b 형식(일)으로 변환하여 7로 나눈 나머지 값을 가지고 문제를 쉽게 해결할 수 있습니다.

 

저는 일수를 누적하는 방식으로 months 배열에 저장했지만, 굳이 누적하지 않고 각 달의 일자들만 배열에 저장해도 상관없으며(31, 29, 31, 30...) 저의 경우 인덱스 범위 초과 오답을 1번 받고 약간 수정해서 문제를 해결하게 되었습니다.

정답 코드

더보기

풀이 시간 : 11m 7s

#include <string>
#include <vector>

using namespace std;

string solution(int a, int b) {
    string answer = "";
    
    int months[13] = {0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366};
    string days[7] = {"THU","FRI","SAT","SUN","MON","TUE","WED"}; 
    
    int day = (months[a - 1] + b) % 7;
    
    answer = days[day];
    
    return answer;
}
728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'코딩테스트 > 프로그래머스 (Lv. 1)' 카테고리의 다른 글

[프로그래머스/C++ 문제 풀이] Lv. 1 - 카드 뭉치  (0) 2024.08.07
[프로그래머스/C++ 문제 풀이] Lv. 1 - 추억 점수  (0) 2024.08.06
[프로그래머스/C++ 문제 풀이] Lv. 1 - 포켓몬  (0) 2024.08.05
[프로그래머스/C++ 문제 풀이] Lv. 1 - 기사단원의 무기  (0) 2024.08.04
[프로그래머스/C++ 문제 풀이] Lv. 1 - 모의고사  (0) 2024.08.01
'코딩테스트/프로그래머스 (Lv. 1)' 카테고리의 다른 글
  • [프로그래머스/C++ 문제 풀이] Lv. 1 - 카드 뭉치
  • [프로그래머스/C++ 문제 풀이] Lv. 1 - 추억 점수
  • [프로그래머스/C++ 문제 풀이] Lv. 1 - 포켓몬
  • [프로그래머스/C++ 문제 풀이] Lv. 1 - 기사단원의 무기
리태s
리태s
게임 클라이언트 프로그래머 직무를 준비하며 공부한 내용을 정리한 블로그입니다.
    반응형
    250x250
  • 리태s
    LeeTaes 공부노트
    리태s
  • 전체
    오늘
    어제
    • Home (165)
      • 프로젝트 (20)
        • Isaac 3D (5)
        • TimelessAdventure (13)
        • FruitsPuzzle (2)
      • Game Programming (25)
        • C# (8)
        • Unity Engine (6)
        • Unreal Engine (8)
        • UE_Multiplayer (3)
      • 코딩테스트 (111)
        • 프로그래머스 (Lv. 0) (27)
        • 프로그래머스 (Lv. 1) (31)
        • 프로그래머스 (Lv. 2) (21)
        • 백준 (Study) (29)
        • 알고리즘 (3)
      • CS지식 (7)
        • 운영체제 (7)
      • 일상 (2)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

    tsoftobjectptr
    Algorithm
    C++
    fruitspuzzle
    pcce 기출문제
    unity
    issac3d
    프로세스
    2019 kakao
    project t.a develop
    c#
    2022 kakao
    CS지식
    sesac
    구현
    코딩테스트
    dataasset
    Unreal Engine
    Summer/Winter Coding
    후기
    ai controller
    timelessadventure
    프로젝트
    청년취업사관학교
    unrealengine
    2018 kakao
    fsoftobjectpath
    delegate
    프로그래머스
    백준
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
리태s
[프로그래머스/C++ 문제 풀이] Lv. 1 - 2016년
상단으로

티스토리툴바