问题 : Day of Week
问题 : Day of Week
http://218.198.32.182/problem.php?cid=1071&pid=7
题目描述
We now use the Gregorian style of dating in Russia. The leap years are years with number divisible by 4 but not divisible by 100, or divisible by 400.
For example, years 2004, 2180 and 2400 are leap. Years 2004, 2181 and 2300 are not leap.
Your task is to write a program which will compute the day of week corresponding to a given date in the nearest past or in the future using today’s agreement about dating.
输入
There is one single line contains the day number d, month name M and year number y(1000≤y≤3000). The month name is the corresponding English name starting from the capital letter.
输出
Output a single line with the English name of the day of week corresponding to the date, starting from the capital letter. All other letters must be in lower case.
样例输入
21 December 2012 5 January 2013
样例输出
Friday Saturday
题意分析
就是输入一个日期,求它是星期几,可以与一个日期比较,我是与1年1月1日比较的。这样写比较容易的
AC代码
# include <stdio.h>
# include <string.h>int qwe(int a)
{return a%4 == 0 && a%100 != 0 || a % 400 == 0;
}int main(void)
{char month[20];int day, year, k, d, i, sum;int q[2][13] = {{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};char a[15][20] = {"0","January","February","March","April","May","June","July","August","September","October","November","December"};char b[10][20] = {"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};while (~ scanf("%d %s %d", &day, month, &year)){sum = 0;for (i = 1; i < year; i ++){if (qwe(i) == 1)sum += 366;elsesum += 365;}for (k = 1; k <= 12; k ++){if (strcmp(month, a[k]) == 0)break;}d = qwe(year);for (i = 1; i < k; i ++){sum += q[d][i];}sum += day;if (sum%7 == 0)printf("Sunday\n");elseprintf("%s\n", b[sum%7 -1]);}return 0;
}
最新文章
- CoreData的简单使用
- springMVC学习-day01
- 一些有趣的三方开源库
- log4j+logback+slf4j+commons-logging的关系与调试
- 洛谷 P1767 家族_NOI导刊2010普及(10)
- qt中setStyleSheet导致的内存泄漏
- Gstreamer之video转码(七)
- IDDD 实现领域驱动设计-上下文映射图及其相关概念
- tomcat8+linux+IDEA配置远程代码调试
- Hello World 我的第一个VB程序
- 如何使用报表工具制作统计报表
- python导入第三方库失败_史上最详细 Python第三方库添加方法 and 错误解决方法
- 机器学习之二分类模型评价指标
- 6.0系统机器Xposed框架安装经验
- .Net Core 登陆验证
- 什么是IaaS、PaaS和SaaS
- dram sram drom srom ddram详细解释
- BreederDAO 宣布与 20 多个区块链游戏建立官方合作关系
- HTML 设置背景图片自适应
- 质量体系建设——环境治理