반응형
문제
이번에 다뤄볼 문제는 1924번 문제 '2007년'입니다.
주어진 내용을 보면
2월은 28일까지
4,6,9,11은 30일까지
나머지는 31일까지 존재한다는 정보를 알아낼 수 있습니다.
따라서 입력으로 들어오는 목표날짜까지의 일수를 먼저 구한다음 이를 7로 나누어보면 답을 알 수 있습니다.
0이라면 일요일 ~ 6이라면 토요일이 됩니다.
아래 해답 코드를 보면 더 쉽게 이해할 수 있으실 겁니다.
코드(C++)
#include<iostream>
using namespace std;
int main() {
int m, d;
int answer;
int count=0;
cin >> m >> d;
m -= 1;
for (m; m >= 1; m--) {
if (m == 2) {
count += 28;
}
else if (m == 4 || m == 6 || m == 9 || m == 11) {
count += 30;
}
else {
count += 31;
}
}
count += d;
answer = count % 7;
if (answer == 0) cout<<"SUN";
else if (answer == 1) cout << "MON";
else if (answer == 2) cout << "TUE";
else if (answer == 3) cout << "WED";
else if (answer == 4) cout << "THU";
else if (answer == 5) cout << "FRI";
else if (answer == 6) cout << "SAT";
return 0;
}
반응형
'algorithm' 카테고리의 다른 글
[C++] 백준 알고리즘 9012번 (괄호) (0) | 2019.01.20 |
---|---|
[C++] 백준 알고리즘 2581번 (소수) (0) | 2019.01.20 |
[C++] 백준 알고리즘 11653번 (소인수분해) (0) | 2019.01.20 |
[C++] 백준 알고리즘 1929번 (소수 찾기) (0) | 2019.01.20 |
[C++] 백준 알고리즘 1978번 (소수 찾기) (0) | 2018.10.26 |