먼저 달 마다 있는 날 같은 건 정해져 있으니 배열을 만들어줬다. 그리고 요일도 배열로 만들었다. index로 바로 뽑아쓰는게 편하니깐ㅋㅋ
다음으로 반복문을 써서 일의 합을 구해줬다. 12월달이면 1월 + 2월 + .. 이렇게 반복문 돌려서 구하는 것 보다 배열에 구해놓는게 더 좋아보였다.
#include <iostream>
int month_day[12] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30};
char week[7][4] = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"};
int main() {
int month, day;
scanf("%d %d", &month, &day);
for(int i = 0; i < 11; i++)
month_day[i+1] += month_day[i];
int sum_day = month_day[month - 1] + day;
printf("%s", week[sum_day % 7]);
return 0;
}
코드는 이렇게 짰다. 깔끔하다!
여담으로 얼마 전 친구한테 백준 풀고 있다고 백준 사이트 구경시켜 줬는데, 애가 내 코드 중 하나를 보더니 너무 더럽게 짰다고 했다. 알고보니 그 문제가 이 문제였다!
그때는 이렇게 짰었다ㅎㅎㅎ 내 작은 성취구나 조금 뿌듯하다
'백준' 카테고리의 다른 글
2920 음계 (0) | 2019.10.06 |
---|---|
11720 숫자의 합 (0) | 2019.10.06 |
1152 단어의 개수 (0) | 2019.10.06 |
17450 과자 사기 (0) | 2019.10.06 |
16917 양념 반 후라이드 반 (0) | 2019.10.06 |