问题 : Day of Week

时间限制: 1 Sec  内存限制: 32 MB
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;
}

最新文章

  1. CoreData的简单使用
  2. springMVC学习-day01
  3. 一些有趣的三方开源库
  4. log4j+logback+slf4j+commons-logging的关系与调试
  5. 洛谷 P1767 家族_NOI导刊2010普及(10)
  6. qt中setStyleSheet导致的内存泄漏
  7. Gstreamer之video转码(七)
  8. IDDD 实现领域驱动设计-上下文映射图及其相关概念
  9. tomcat8+linux+IDEA配置远程代码调试
  10. Hello World 我的第一个VB程序
  11. 如何使用报表工具制作统计报表
  12. python导入第三方库失败_史上最详细 Python第三方库添加方法 and 错误解决方法
  13. 机器学习之二分类模型评价指标
  14. 6.0系统机器Xposed框架安装经验
  15. .Net Core 登陆验证
  16. 什么是IaaS、PaaS和SaaS
  17. dram sram drom srom ddram详细解释
  18. BreederDAO 宣布与 20 多个区块链游戏建立官方合作关系
  19. HTML 设置背景图片自适应
  20. 质量体系建设——环境治理

热门文章

  1. Kali下卸载程序和安装程序的方法
  2. windows 禁用中文输入法(转)
  3. 比特交织 matlab,比特交织空时编码不对称调制方案及软件分析
  4. Flutter技术与实战(6)
  5. 30岁哥大计算机博士生遇刺身亡!论文刚被顶会接收,曾留学中国
  6. rip路由的 负载分担
  7. rufus 装windows11 系统 z790 msi 主板
  8. 如何解决WIN10环境下 Raid 模拟器遇到乱码问题
  9. 数据分析从零到精通第三课 python自动化和BI数据可视化实战
  10. Go 程序崩了?煎鱼教你用 PProf 工具来救火!