일정
시간 제한2초메모리 제한1024 MB
연도와 1월 1일의 요일, 공휴일 목록이 주어질 때 휴무일을 가장 많이 만드는 요일과 가장 적게 만드는 요일을 구합니다.
문제
일리야는 공부에 지쳤다. 처음에는 학교였고, 그다음은 대학교였다. 드디어 아침에 수업을 들으러 갈 필요가 없는 날이 왔다. 하지만 일리야에게는 이제 가장 어려운 일이 남아 있다. 대학을 마친 뒤 직장을 구해야 한다.
일리야가 입사한 회사 Goondex는 세계적으로 알려진 곳이며, 직원에게 많이 일하기를 요구한다. 직원은 주 6일 근무한다. 다만 보너스로 Goondex는 매년 직원마다 한 주의 요일 중 원하는 하루를 휴일로 고르게 한다. 나머지 여섯 요일은 근무일이다.
일리야는 국경일(항상 휴일)을 함께 고려하면, 어떤 요일을 휴일로 고르느냐에 따라 한 해의 근무일 수가 달라진다는 것을 알아챘다. 그는 가장 많이 쉬기 위해, 혹은 반대로 가장 많이 일하기 위해 어떤 요일을 고르면 좋을지 알고 싶어 한다.
입력
첫 줄에는 국경일의 수 N (0 ≤ N ≤ 366)이 정수로 주어진다.
둘째 줄에는 일리야를 도와야 하는 해 year (1800 ≤ year ≤ 2100)가 주어진다.
이어지는 N개의 줄에는 day와 month가 공백 한 칸으로 구분되어 주어진다. 이는 month(영어 월 이름)의 day일이 국경일이라는 뜻이다.
마지막 줄에는 year년 1월 1일의 요일을 나타내는 단어 day_of_week가 주어진다.
모든 날짜는 올바르게 주어지며, 주어진 1월 1일의 요일도 실제와 일치한다. 국경일은 모두 서로 다른 날이다.
출력
두 요일을 공백으로 구분해 출력한다. 첫 번째는 최선의 휴일 요일(그해 휴일이 가장 많아지는 요일), 두 번째는 최악의 휴일 요일(휴일이 가장 적어지는 요일)이다. 답이 여러 개이면 그중 아무거나 출력해도 된다.
힌트
세 번째 예제를 자세히 살펴보자. 2013년은 화요일에 시작해서 화요일에 끝난다. 화요일은 53번 있고, 나머지 요일은 각각 52번씩 있다. 국경일 세 개는 모두 수요일에 있다.
일리야가 화요일을 휴일로 고르면 휴일은 53 + 3 = 56일이 된다(화요일 53일과 국경일 3일). 수요일을 고르면 휴일은 52일뿐이다. 그 밖의 요일을 고르면 52 + 3 = 55일이 된다.
따라서 최선은 화요일, 최악은 수요일이다. 이 예제의 유일한 정답은 Tuesday Wednesday이다.
참고
2월은 윤년에만 29일이다. 윤년은 400으로 나누어떨어지거나, 4로 나누어떨어지고 100으로는 나누어떨어지지 않는 해다. 예를 들어 1996년과 2000년은 윤년이고, 1999년과 1900년은 윤년이 아니다.