입력값 (a,b) 를 받았을 때, 2016년 a월 b일을 구하는 문제.

2016년은 윤년. (2월 29일까지 있다.!)

a월 b일을 일단위로 변환한 후, 7로 나눈 나머지를 가지고 요일을 구한다.

 

#include <string>
#include <vector>

using namespace std;

string solution(int a, int b) {
    string answer = "";
    vector<string> week = {"THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED"};
    int month_final_day[12]  = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    
    int a_month = 0;
    int b_day =0;
    
 	// 전달까지의 일 수 더하기
    for(int i = 0; i < a-1; i++)
    {
        a_month += month_final_day[i];
    }
    b_day = a_month + b;
    const int result = b_day%7;

    answer = week.at(result);
    return answer;
}

 

 

 

 

+ Recent posts