본문 바로가기

Computer Science&Engineering/코딩테스트

[백준 1924] 2007년 #요일구하기

문제 링크

www.acmicpc.net/problem/1924

 

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

변수 x, y 에 월과 일을 입력받고, 해당 일까지 날짜 수를 구해서 7로 나눈 나머지에 따라서 요일을 출력해주면 된다.

예를 들어 1월 1일이 월요일일때, 일주일 뒤인 1월 8일 또한 월요일이 된다. 날짜를 7로 나눈 나머지가 1일 때 월요일이다. 이처럼 7로 나눈 나머지가 2일 때 화요일, 3일 때 수요일, 4일 때 목요일이 되도록 구성해주면 된다.

 

# 제출 코드

# include <stdio.h>

int main(){
	int x, y; // x월 y일 
	int months[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
	char days[7][5] = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"};
	scanf("%d %d", &x, &y);
	while(--x){
		y += months[x];
	}
	printf("%s", days[y%7]);
}

 

반응형

'Computer Science&Engineering > 코딩테스트' 카테고리의 다른 글

[백준 10818] 최소, 최대 구하기  (0) 2021.02.21
[백준 8393] 합 # 1부터 N까지 합  (0) 2021.02.21
[백준 2739] 구구단  (0) 2021.02.21
[백준 2742] 기찍 N  (0) 2021.02.21
[백준 2741] N 찍기  (0) 2021.02.21