HDU 1201
来源:互联网 发布:手机学全站仪的软件 编辑:程序博客网 时间:2024/06/02 06:02
18岁生日
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 18353 Accepted Submission(s): 5804
Problem Description
Gardon的18岁生日就要到了,他当然很开心,可是他突然想到一个问题,是不是每个人从出生开始,到达18岁生日时所经过的天数都是一样的呢?似乎并不全都是这样,所以他想请你帮忙计算一下他和他的几个朋友从出生到达18岁生日所经过的总天数,让他好来比较一下。
Input
一个数T,后面T行每行有一个日期,格式是YYYY-MM-DD。如我的生日是1988-03-07。
Output
T行,每行一个数,表示此人从出生到18岁生日所经过的天数。如果这个人没有18岁生日,就输出-1。
Sample Input
11988-03-07
Sample Output
6574
#include<stdio.h>int leap(int Y){ if(Y%4==0&&Y%100!=0||Y%400==0) return 1; else return 0;}int main() { int i,T; int Y,M,D; int Date; scanf("%d",&T); while(T--) { Date=18*365; scanf("%d-%d-%d",&Y,&M,&D); if(!leap(Y+18)&&M==2&&D==29) { printf("-1\n");continue; } if(leap(Y)&&(M<2||M==2)&&D<=28) Date++;//此处有逻辑问题,不加括号会出现错误 //if(leap(Y)&&M==2&&D==29&&leap(Y+18)) Date++; //if(M>2&&leap(Y+18)) Date++; if(leap(Y+18)&&M>2||M==2&&D==29) Date++; for(i=Y+1;i<=Y+17;i++) { if(leap(i)) Date++; } printf("%d\n",Date); } return 0;}
0 0
- hdu 1201
- hdu 1201
- hdu 1201
- HDU 1201
- hdu 1201
- HDU 1201
- HDU 1201 闰年
- HDU 1201 Fibonacci Again
- HDU 1201(水题)
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- 前5分析软件解决方案
- Linux设备驱动程序(第三版)读书笔记1,hello world
- html中table边框细线
- 常用JS验证函数总结
- android 得到应用列表
- HDU 1201
- UITableView(一)---- 基础
- 数组实现的队列
- 该培训纳入分析与业务分析建模
- OC语言学习-其他
- 视频广告应该是你的广告计划中巨大的一部分
- cocos2d-x之CCTextureCache 用法总结
- opencv之sift双目测距
- 使用 CSS 媒体查询创建响应式网站