C1103 - 日历问题
题目描述
日历是一种用于测量时间的系统,从小时和分钟,到月份和日子,最后到年份和世纪。小时、日、月、年和世纪这些术语都是日历系统的时间单位。
根据现在使用的公历,年份能被4整除但不能被100整除或者年份能被400整除的年份是闰年,闰年的2月份有29天,平年的2月份是28天
因此,1700年、1800年、1900年和2100年不是闰年,但1600年、2000年和2400年是闰年。
给定自公元2000年1月1日以来经过的天数,你的任务是找出具体日期和星期几。
2000年1月1日是星期六
输入格式
输入由多行组成,每行包含一个正整数,表示自公元2000年1月1日以来经过的天数N。最后一行包含整数−1,代表输入结束(不应处理)。
你可以假设结果日期不会超过公元9999年。
输出格式
对于每个测试用例,输出一行,包含日期和星期几,格式为“YYYY-MM-DD DayOfWeek”,其中“DayOfWeek”必须是“Sunday”、“Monday”、“Tuesday”、“Wednesday”、“Thursday”、“Friday”和“Saturday”之一。
输入输出样例
| 输入样例 | 输出样例 |
|---|---|
| 1730 1740 1750 1751 -1 |
2004-09-26 Sunday 2004-10-06 Wednesday 2004-10-16 Saturday 2004-10-17 Sunday |
数据范围与提示
对于100%的数据满足:$1 \le N \le 2 \times 10^{6}$,最多有20组测试数据
测试点数目
共10个测试点,每个测试点10分
时间与内存限制
每个测试点时间:1000ms(1.0s),内存:256MiB
输入输出模式
本OJ支持两种输入输出模式
1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:C1103.in,输出文件名为:C1103.out