명절은 언제인가?
시간 제한2초메모리 제한1024 MB
1월 1일의 요일과 윤년 여부가 주어질 때, 각 공휴일이 해당 달의 첫 번째 또는 마지막 특정 요일인 날짜를 구합니다.
문제
얼룩말 마티는 신나게 노는 것을 아주 좋아한다. 안타깝게도 직장 상사가 매우 엄격해서, 마티는 명절에만 놀 수 있다.
마다가스카르에서는 러시아의 날이나 국제 여성의 날 같은 명절을 지키지 않는다. 날짜가 고정된 명절은 아예 없다. 모든 명절은 「1월의 첫 번째 월요일」이나 「7월의 마지막 수요일」 같은 날짜에 든다. 더 정확히 말하면, 명절은 어떤 달에서 특정 요일의 첫 번째 날이거나 마지막 날 중 하나이다. 요일과 달은 어느 것이든 될 수 있다. 마다가스카르의 달력은 러시아에서 쓰는 달력과 완전히 같다.
마티는 매년 명절 날짜를 계산하느라 오랜 시간을 쓴다. 이 과정을 자동화하도록 그를 도와주자.
입력
첫 줄에 마티가 날짜를 알고 싶어 하는 명절의 개수 ()이 주어진다.
둘째 줄에는 마티가 관심 있는 해의 1월 1일이 무슨 요일인지가 먼저 주어진다. 그 뒤에 공백을 두고 해당 해가 윤년이면 yes, 아니면 no가 주어진다.
다음 개의 줄에는 명절이 하나씩 주어진다. 각 줄의 첫 단어는 first 또는 last이며, 명절이 그 달에서 해당 요일의 첫 번째 날인지 마지막 날인지를 나타낸다. 이어서 요일 이름, of, 달 이름이 공백으로 구분되어 주어진다.
입력의 모든 글자는 소문자이다. 요일과 달의 이름은 아래 표의 이름과 같다.
출력
각 명절마다 한 줄에 하나씩, 주어진 해에서 그 명절이 드는 날짜(월의 며칠인지)를 출력한다.
힌트
요일 이름 대응표이다.
달 이름 대응표이다.