HDOJ-1201 18岁生日
18岁生日
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 167 Accepted Submission(s) : 48
注意:基本思想可以把这个分为三部分,出生那年的天数,18岁那年的天数,中间的天数,加起来就可以。
有种情况是该学生没有18的生日的,要单独拿出来考虑,当该学生生日是瑞年但是18生日不是瑞年时,就是这种情况。
我的代码:
#include<stdio.h>
#include<string.h>
int isRuiNian(int year)
{if((year%400==0)||(year%4==0&&year%100!=0))return 1;return 0;
}
int DiJiTian(int year,int month,int day)
{int i,sum=0;for(i=1;i<month;i++){if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)sum+=31;else{if(i==2){if(isRuiNian(year))sum+=29;elsesum+=28;}elsesum+=30;}}sum+=day;return sum;
}
int main()
{int n;char birth[100];scanf("%d",&n);while(n--){ int year ,month, day;int a=0,b=0,c=0,i,total;scanf("%d-%d-%d",&year,&month,&day);if(isRuiNian(year+18)==0&&month==2&&day==29){printf("-1\n");}else{if(isRuiNian(year))a=366-DiJiTian(year,month,day);elsea=365-DiJiTian(year,month,day);for(i=year+1;i<year+18;i++){if(isRuiNian(i))b+=366;elseb+=365;}c=DiJiTian((year+18),month,day);total=a+b+c;printf("%d\n",total);}}return 0;
}
HDOJ-1201 18岁生日相关推荐
- HDOJ 1201 18岁生日
题目链接 纯水题关键是得处理好闰年.闰月问题. AC代码: #include <iostream> using namespace std;int d1[12] = { 31, 28, 3 ...
- HDU - 1201 - 18岁生日 - [局部分离思想]
HDU - 1201 - 18岁生日 https://vjudge.net/problem/HD... 一句话题意:给定出生日期(格式为1988-03-07),求到18岁生日为止经历了多少天:没有18 ...
- hdu oj 1201:18岁生日
题目链接 题意是求每个人18岁生日所经历的天数,一开始没明白如果这个人没有18岁生日,就输出-1,是什么意思,以为是要考虑现在的日子,看他到没到十八. 但后来查了一下了解到意思是如果她的生日是闰年的二 ...
- 1201 18岁生日
18岁生日 Problem Description Gardon的18岁生日就要到了,他当然很开心,可是他突然想到一个问题,是不是每个人从出生开始,到达18岁生日时所经过的天数都是一样的呢?似乎并不全 ...
- 18岁生日 HDU - 1201
Gardon的18岁生日就要到了,他当然很开心,可是他突然想到一个问题,是不是每个人从出生开始,到达18岁生日时所经过的天数都是一样的呢?似乎并不全都是这样,所以他想请你帮忙计算一下他和他的几个朋友从 ...
- 18岁生日 HDU 1201
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...
- E - 18岁生日(20)
添加链接描述 E - 18岁生日(20) HDU - 1201 Gardon的18岁生日就要到了,他当然很开心,可是他突然想到一个问题,是不是每个人从出生开始,到达18岁生日时所经过的天数都是一样的呢 ...
- HDU1201 18岁生日【日期计算】
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- HDU1201 18岁生日【日期计算+水题】
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...
- 计算到达18岁生日所经过的总天数
Problem Description Gardon的18岁生日就要到了,他当然很开心,可是他突然想到一个问题,是不是每个人从出生开始,到达18岁生日时所经过的天数都是一样的呢?似乎并不全都是这样,所 ...
最新文章
- MySQL笔记之视图的使用详解
- IEPLUS(IE增强性插件)
- python的内存管理机制及调优手段_Python的内存管理机制及调优手段
- c#hello world_C#| 打印消息/文本(用于打印Hello world的程序)
- 直播视频网站源码,列表的展开更多和点击收起功能
- TraceView issue
- IntelliJ IDEA 下载安装以及破解码大集合
- html和js制作个人所得税表格,H5编写个税计算器(JS代码编写).doc
- 原生安卓X86 TV安装配置
- 33 | 如何做好验收测试?
- 一只仓鼠引发的热议HUAWEI nova 青春版超大内存走红
- ElementUI 整体页面布局
- PaddleHub一键识别动物 : resnet50_vd_animals
- 企查查接口full的实现`
- 搭建CTF-AWD训练平台
- Spring Boot整合Redis缓存(Lettuce)
- 高等数学学习笔记——第三十二讲——泰勒公式
- 有考c语言的软件工程专硕吗,2020年南开大学软件工程硕士考研真题试卷及试题答案,C语言与数据结构考研试题下载...
- 胜任力参考阅读资料汇总
- mt4 部分内置函数