算两个日期相差多少天,杭电1201(18岁生日多少天)类似
来源:互联网 发布:linux 红底白字 编辑:程序博客网 时间:2024/04/29 23:48
#include<iostream>#include<cstdio>using namespace std;int days[13][2]={//设立数组 0,0, 31,31, 28,29, 31,31, 30,30, 31,31, 30,30, 31,31, 31,31, 30,30, 31,31, 30,30, 31,31,};struct Date{ int day; int month; int year; int Isyear() { if(year%100!=0&&year%4==0||year%400==0)return 1; else return 0; } void nextday(){ int flag = Isyear(); day++; if(day>days[month][flag]) { day=1; month++; if(month>12) { month=1; year++; } } }};int buf[5000][13][32];//设定预处理天数int main(){ Date dat; dat.day=1; dat.month=1; dat.year=0;//设定0.1.1为第一天 int count=0;//天数计算保存 while(dat.year!=5000){ buf[dat.year][dat.month][dat.day]=count;//与0.1.1的天数间隔 dat.nextday(); count++; }int t; int d1,m1,y1;int y2; //int d2,m2,y2;//2次的日期 //cin>>y1>>m1>>d1; //cin>>y2>>m2>>d2; Date date; while(scanf("%d",&t)!=EOF) {for(int i = 1;i<=t;i++){ scanf("%4d-%2d-%2d",&y1,&m1,&d1); date.year = y1; y2 = y1+18;//18年后 if(date.Isyear()&&m1==2&&d1==29){//判断自己出生的时候是不是闰年里的2-29 printf("-1\n"); continue; } else{ cout<<buf[y2][m1][d1]-buf[y1][m1][d1]<<endl;//18年后的天数减去出生的天数 }//cin>>y1>>m1>>d1; //cin>>y2>>m2>>d2; }} return 0;}
0 0
- 算两个日期相差多少天,杭电1201(18岁生日多少天)类似
- Java 判断两个日期相差多少天
- Java 判断两个日期相差多少天
- java计算两个日期相差多少天
- 计算两个日期相差多少天!
- 比较两个日期相差多少天
- 判断两个日期相差多少天
- php计算两个日期相差多少天(日)…
- 第十七周 项目4.2日期结构体(计算两个人的生日相差多少天)
- 第十七周项目四日期结构体(2)两个人的生日相差多少天
- 两个时间相差多少天
- excel中计算两个日期之间的相差多少天
- Java 计算两个日期直接相差多少天
- 取得两个日期之间的相差多少天
- java计算两个日期相差多少天小时分钟等
- jquery判断两个日期之间相差多少天
- js判断两个日期之间相差多少天
- 算法:输入两个日期,求之间相差了多少天
- Java十类面试题<中英版>
- 杭电1019
- 代理设计模式 && block设计模式 && KVC\KVO
- php变量
- 第二周项目1-宣告“主权”
- 算两个日期相差多少天,杭电1201(18岁生日多少天)类似
- dispatch_source
- 前端面试内容汇总
- 上机题目(初级)- 键盘控制小球(Java)
- 二叉树的反转,递归实现和非递归实现。
- UIImageView(loading...)
- 【周练3016.3.5】老王修公园(dfs,水)
- python安装mysqldb
- Android Studio 各种配置(更新中)