반응형
리뷰
문제 풀이
- 각 월의 일 수를 나타낼 정수형 벡터를 초기화 해준다.
- 각 요일을 나타낼 문자열 벡터를 초기화 해준다.
- sum 변수를 0으로 초기화 해주고, 이전 월들의 일 수를 더해준 후 현재 월의 일 수를 더해준다.
- 요일 벡터에 sum을 7로 나눈 나머지의 인덱스의 문자열을 출력해 주면 된다.
참고 사항
- 2009년의 1월 1일은 목요일 이므로 0번 인덱스는 수요일로 설정해 준다.
- 2009년은 윤년이 아니므로 2월은 28일로 나타내 주면 된다.
정답 코드
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main() {
int d, m;
cin >> d >> m;
vector<int> months = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
vector<string> day = { "Wednesday", "Thursday", "Friday", "Saturday", "Sunday", "Monday", "Tuesday"};
int sum = 0;
while (--m) {
sum += months[m - 1];
}
sum += d;
cout << day[sum % 7];
}
728x90
반응형
'알고리즘 공부 > C++' 카테고리의 다른 글
백준 10820번 문자열 분석 C++ (1) | 2024.07.21 |
---|---|
백준 11656번 접미사 배열 C++ (0) | 2024.07.20 |
백준 11655번 ROT13 C++ (0) | 2024.07.20 |
백준 11170번 0의 개수 C++ (1) | 2024.07.20 |
백준 5218번 알파벳 거리 C++ (0) | 2024.07.20 |