흔한 날짜 계산 문제다.
1월 1일의 요일이 주어지므로 그때까지의 날짜 수 만 계산하면 된다.
#include <string>
#include <vector>
using namespace std;
int DAYS_OF_MONTH(int i)
{
if (i == 2)
return 29;
else if (i == 3)
return 31;
else if (i == 4)
return 30;
else if (i == 5)
return 31;
else if (i == 6)
return 30;
else if (i == 7)
return 31;
else if (i == 8)
return 31;
else if (i == 9)
return 30;
else if (i == 10)
return 31;
else if (i == 11)
return 30;
else if (i == 12)
return 31;
}
string solution(int a, int b) {
string answer[] = { "FRI", "SAT", "SUN", "MON", "TUE", "WED", "THU" };
int day = b - 1;
for (int i = 1; i < a; i++)
day += DAYS_OF_MONTH(i);
return answer[day % 7];
}'Coding_Test 연습 > Programmers' 카테고리의 다른 글
| [프로그래머스] (C++) LV1 나머지가 1이 되는 수 찾기 (0) | 2022.04.25 |
|---|---|
| [프로그래머스] (C++) LV1 최소직사각형 (0) | 2022.04.25 |
| [프로그래머스] (C++) LV1 두 개 뽑아서 더하기 (0) | 2022.04.23 |
| [프로그래머스] (C++) LV1 예산 (0) | 2022.04.21 |
| [프로그래머스] (C++) LV1 3진법 뒤집기 (0) | 2022.04.20 |