UVA631 Microzoft Calendar

题目描述

微软推出了一款全新的日历。 在这个日历中,一年被分为 `2` 个周期,`Gill` 和 `Bates`。 而每个周期又分为 `5` 个月,分别是 `Sun` , `Water` , `Forest` , `Mountain` 和 `Money` 。 每个月有 `6` 周,共计 `36` 天。连续的一周里每天分别称为 `First` , `Second` , `Third` , `Fourth` , `Fifth` 和 `Sixth` 。 这样的话每年总会剩下 `5` 或 `6` 天,这些天不属于任何周期、月、周。这是一年当中庆祝的日子,我们把它们分别叫做 `Feast 1` , `Feast 2` , `Feast 3` , `Feast 4` , `Feast 5` (`Feast 6`) 。 微软日历中的日期是这样写的: `1~360天:----` `361~365/366天:-` 由于某种原因,第一年的第一天为旧历的 `1998` 年 `6` 月 `25` 日,并且闰年的判定也和旧历一样( 可以被 `4` 整除,但不能被 `100` 整除,或者可以被 `400` 整除的就是闰年,比如 `4 8 400` 就是闰年,而 `5 98 100` 就不是闰年 ) 。且在这个日期之前的日期都会在前面都会标记 `bd` 。 你的任务就是编写一个微软日历转换器。 一年中周期、月、周的时间表如下: | 第几天 | 周 | 月 | 周期 | | :----------: | :----------: | :----------: | :----------: | | `1~6` | `Frist` | `Sun` | `Gill` | | `7~12` | `Second` | `Sun` | `Gill` | | `13~18` | `Third` | `Sun` | `Gill` | | `19~24` | `Fourth` | `Sun` | `Gill` | | `20~30` | `Fifth` | `Sun` | `Gill` | | `31~36` | `Sixth` | `Sun` | `Gill` | | `37~42` | `First` | `Water` | `Gill` | | `43~48` | `Second ` | `Water` | `Gill` | | `……` | `……` | `……` | `……` | | `355~360` | `Sixth` | `Money` | `Bates` | | `361~365/366` | `……` | `……` | `……` |

输入格式

在输入 `END` 之前,每行一个以 `YYYY-MM-DD` 为格式的旧历日期,如果你发现它是个新历日期,直接输出 `Enter date in old format` 即可。输入的旧历年份保证在 `1600` 年至 `5000` 年之内。

输出格式

每行一个转换后的结果。