[백준 알고리즘]/[C++]
1924번 2007년 / Baekjoon BOJ 백준 1924 C++ 코드, 해설, 풀이
말하는펭귄
2020. 9. 27. 21:12
728x90
반응형
이번 포스팅은 백준 1924번 2007년입니다.
아래 url를 클릭하시면 백준 사이트에서 문제를 볼 수 있습니다.
1924번: 2007년
첫째 줄에 빈 칸을 사이에 두고 x(1≤x≤12)와 y(1≤y≤31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다.
www.acmicpc.net
기본 알고리즘
1월 1일로부터 며칠이 지났는지 계산하여 그 값을 7로 나눈 나머지를 통해 요일을 계산한다.
1월 1일은 월요일, 2일은 화요일, 3일은 수요일... 이므로
7로 나눈 나머지가 1이면 월요일, 2이면 화요일, 3이면 수요일... 0이면 일요일이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#include <iostream>
using namespace std;
int main() {
int month, date;
cin >> month >> date;
int daysInMonth[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
int totalDays = 0;
totalDays += date;
for (int i = 0; i < (month-1); i++) {
totalDays += daysInMonth[i];
}
switch (totalDays % 7) {
case 0:
cout << "SUN";
break;
case 1:
cout << "MON";
break;
case 2:
cout << "TUE";
break;
case 3:
cout << "WED";
break;
case 4:
cout << "THU";
break;
case 5:
cout << "FRI";
break;
case 6:
cout << "SAT";
break;
}
}
|
cs |
728x90
반응형