18:Tomorrow never knows?
总时间限制: 1000ms 内存限制: 65536kB描述
甲壳虫的《A day in the life》和《Tomorrow never knows》脍炙人口,如果告诉你a day in the life,真的会是tomorrow never knows?相信学了计概之后这个不会是难题,现在就来实现吧。
读入一个格式为yyyy-mm-dd的日期(即年-月-日),输出这个日期下一天的日期。可以假定输入的日期不早于1600-01-01,也不晚于2999-12-30。
输入输入仅一行,格式为yyyy-mm-dd的日期。输出输出也仅一行,格式为yyyy-mm-dd的日期样例输入
代码语言:javascript复制2010-07-05
样例输出
代码语言:javascript复制2010-07-06
提示闰年的标准: (1)普通年能被4整除且不能被100整除的为闰年。(如2004年就是闰年,1901年不是闰年) 地球公转示意图 (2)世纪年能被400整除的是闰年。(如2000年是闰年,1100年不是闰年) 输入语句scanf("%d-%d-%d",&y,&m,&d)可以存储年,月,日.输出语句格式类似printf("%d-d-dn",year,month,day).
代码语言:javascript复制 1 #include<cstdio>
2 using namespace std;
3 int main()
4 {
5 int x,m,d;
6 scanf("%d-%d-%d",&x,&m,&d);
7 if((x@0==0)||((x%4==0)&&(x0!=0)))
8 {
9 if(m==1||m==3||m==5||m==7||m==8||m==10)
10 {
11 if(d==31)
12 {
13 printf("%d-d-dn",x,m 1,d-30);
14 }
15 else
16 {
17 printf("%d-d-dn",x,m,d 1);
18 }
19 }
20 else if(m==12)
21 {
22 if(d==31)
23 {
24 printf("%d-d-dn",x 1,m-11,d-30);
25 }
26 else
27 {
28 printf("%d-d-dn",x,m,d 1);
29 }
30 }
31 else if(m==4||m==6||m==9||m==11)
32 {
33 if(d==30)
34 {
35 printf("%d-d-dn",x,m 1,d-29);
36 }
37 else
38 {
39 printf("%d-d-dn",x,m,d 1);
40 }
41 }
42 else
43 {
44 if(d==29)
45 {
46 printf("%d-d-dn",x,m 1,d-28);
47 }
48 else
49 {
50 printf("%d-d-dn",x,m,d 1);
51 }
52 }
53 }
54 else
55 {
56 if(m==1||m==3||m==5||m==7||m==8||m==10)
57 {
58 if(d==31)
59 {
60 printf("%d-d-dn",x,m 1,d-30);
61 }
62 else
63 {
64 printf("%d-d-dn",x,m,d 1);
65 }
66 }
67 else if(m==12)
68 {
69 if(d==31)
70 {
71 printf("%d-d-dn",x 1,m-11,d-30);
72 }
73 else
74 {
75 printf("%d-d-dn",x,m,d 1);
76 }
77 }
78 else if(m==4||m==6||m==9||m==11)
79 {
80 if(d==30)
81 {
82 printf("%d-d-dn",x,m 1,d-29);
83 }
84 else
85 {
86 printf("%d-d-dn",x,m,d 1);
87 }
88 }
89 else
90 {
91 if(d==28)
92 {
93 printf("%d-d-dn",x,m 1,d-27);
94 }
95 else
96 {
97 printf("%d-d-dn",x,m,d 1);
98 }
99 }
100 }
101 return 0;
102 }