Problem B: 英雄无敌3(2)

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 295  Solved: 52
[ Submit][ Status][ Web Board]

Description

英雄无敌3中的兽人觉得人类的星期制度很好,要模仿这个制度,但他们大多都很愚蠢,他们搞不明白人类的星期制度。虽然他们出了很多题目(给出日期,输出星期几),但不知道答案,作为兽人的人类朋友,你可以帮助他们吗?(为了表示方便,0代表星期天,1代表星期一,2代表星期二,3代表星期三,4代表星期四,5代表星期五,6代表星期六)

Input

第一行输入一个数t,代表题目数。

每个题目有3个正整数分别为y(0<y<=2013), m(0=<m<=20), d(0<=d<=40)分别代表年,月,日。

Output

对于每组案例,输出一个整数,代表星期几(当然由于兽人很愚蠢,他们给出的日期有可能是不存在的,对于这种情况,请输出-1)

Sample Input

1 2013 4 25

Sample Output

4
【分析】:已知年月日求星期几有专门的公式,要注意的点是 闰平年的二月天数不同,月份可以用常量数组表示。
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#include<string>
#include<vector>
#include<stack>
#include<bitset>
#include<cstdlib>
#include<cmath>
#include<set>
#include<list>
#include<deque>
#include<map>
#include<queue>
using namespace std;
typedef long long ll;
const double PI = acos(-1.0);
const double eps = 1e-6;
const int INF = 1000000000;
const int maxn = 100;
int T,n,m;
int year,mouth,day;int solve(int yy,int mm,int dd)
{int m[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};if(mm==0||mm>12||dd==0||dd>31){return -1;}if(!((yy%4==0&&yy%100!=0)||yy%400==0))m[2]=28;elsem[2]=29;if(dd>m[mouth]){return -1;}if(mm<3)//在普适公式/基姆拉尔公式中有个与其他公式不同的地方:  //把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。{yy--;mm+=12;}int c=yy/100;int y=yy%100;return (((c/4-2*c+y+y/4+13*(mm+1)/5+dd-1)%7+7)%7);
}int main()
{scanf("%d",&T);int ans;while(T--){scanf("%d %d %d",&year,&mouth,&day);if(year<=0||mouth<=0||day<=0||mouth>12||day>31)printf("-1\n");elseprintf("%d\n",solve(year,mouth,day));}return 0;
}

  

转载于:https://www.cnblogs.com/Roni-i/p/7373922.html

Problem B: 英雄无敌3(2)【模拟,日期转换】相关推荐

  1. Problem B: 英雄无敌3(2)

    Problem B: 英雄无敌3(2) Time Limit: 1 Sec   Memory Limit: 128 MB Submit: 351   Solved: 73 [ Submit][ Sta ...

  2. 英雄无敌3的地图格式分析以及解码方法研究——汇编模拟

    老玩家都知道,英雄无敌3是附带有地图编辑器程序的,但是编辑器保存的地图内容数据是加密存储的格式,所以不能通过修改地图内容来直观的知道具体地图数据格式. 目前笔者通过汇编OllyDbg调试工具获得exe ...

  3. 英雄无敌6服务器在哪个文件夹,Win7系统无法运行英雄无敌6的两种原因和解决方法...

    英雄无敌6作为一款策略模拟类游戏,深受高端玩家的喜爱.但最近有Win7旗舰版系统用户在玩英雄无敌6时,却出现了无法运行的情况,重启好多次还是一样,不太清楚是哪里出问题,网上相关解决方案也比较少,针对此 ...

  4. 1199: 英雄无敌3(2)

    1199: 英雄无敌3(2) Time Limit: 1 Sec Memory Limit: 128 MB [Submit][Status][Web Board] Description 英雄无敌3中 ...

  5. zcmu--1199: 英雄无敌3(2)

    1199: 英雄无敌3(2) 时间限制: 1 Sec   内存限制: 128 MB 提交: 351   解决: 73 [ 提交][ 状态][ 讨论版] 题目描述 英雄无敌3中的兽人觉得人类的星期制度很 ...

  6. 英雄无敌3版的仙剑奇侠传

    英雄无敌3版的仙剑奇侠传(战役,共8张地图?).     使用方法:复制到英雄无敌3安装目录下的Maps文件夹中,进入 游戏--新游戏--战役--自创战役.     要看仙剑头像的,请把那些*.pcx ...

  7. 三国志、英雄无敌玩腻了?没关系,我教你开发个战旗游戏玩玩

    喜欢回合制战棋游戏的玩家,肯定对<三国志曹操传>和<英雄无敌>这两款经典战旗游戏不陌生吧. 在<三国志曹操传>中,镇压黄巾军.群雄讨伐董卓.灭吕布等历史事件与游戏中 ...

  8. ubuntu linux下面运行《暗黑破坏神2》和英雄无敌3-死亡阴影

    游戏文件: 链接: https://pan.baidu.com/s/1McfinqGnCZJlaCnll4o2Hw&shfl=shareset 提取码: a55t wine设置参考[2] 自己 ...

  9. Ubuntu Linux 18.10下面安装魔法门之英雄无敌3

    不废话,直接进入正题: 1.Heroes.of.Might.and.Magic.3.Linux.[mulek.info].iso 这个资源是32位 下载链接: 链接: https://pan.baid ...

最新文章

  1. [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 )
  2. Redis实现消息队列
  3. sequoiadb sdbexprt 导入工具进阶使用
  4. dsp广告和信息流广告区别_一文搞懂DSP-蘑菇街DSP广告实践
  5. Request_请求转发
  6. Java类加载机制深度分析
  7. 莫名其妙的java.lang.NoClassDefFoundError
  8. 基于C#木门归方程序 下料机 锯片 CNC 拆单软件 全屋定制设计拆单软件橱柜衣柜拆单设计制造管理一体化软件 有屋软件
  9. 海外邮件收发阻碍多?网易企业邮箱为您保驾护航【网易企业邮箱怎么申请】
  10. Catagory用法
  11. 基于眼底照片的病理性近视眼及识别
  12. 盗版网课有多猖狂?原价上万,只卖5元
  13. 解决echarts在平移和缩放中国地图后,下钻到下一级具体省份地图时生成的地图不在容器中间,会跑到容器外面去。
  14. 【极光推送】项目包名更改后极光推送不能使用的解决办法
  15. STC89C52单片机定时器及中断系统的介绍以及代码示例
  16. 苹果开发者账号续费不成功的解决方案
  17. java hough_hough变换检测直线Java
  18. 大数据全套教学视频,看仔细了是视频!
  19. 干什么挣钱快,2个冷门项目让你迅速发家致富
  20. 基于C51的扩展系统结构的篮球记分器【包含IIC运用,DS1307,LCM12864】的课设作业

热门文章

  1. React项目中引入图片
  2. ChatGPT 是怎样炼成的?
  3. ELK日志原理与介绍
  4. 小程序中for循环列表后点击不同列表跳转不同页面
  5. linux下unzip解压命令,linux的unzip解压命令的详细解释
  6. FreeRTOS堆分配大小对任务数的影响
  7. 杰理之怎样在音量调到最大的情况下继续增大音量【篇】
  8. spring整合redis分片
  9. 在线词云制作tagxedo
  10. 科技有毒 | 中国当代青年十二时辰APP使用指南