NYOJ 312题 20岁生日

来源:互联网 发布:网络维护与故障排除 编辑:程序博客网 时间:2024/04/30 03:04

题意弄不清不好做。

1.没有20岁生日:指在2月29号出生,但20年后的那一年是平年,即2月没有29号,所以没有20岁生日。

2.分段计算。

[y + 1,y + 19]

第y年 :(m,12]

第(y + 20)年:[1,m)

m 月的天数。

对第y年和第y + 20年分开判断。若m是1,3,4,5,6,7,8,9,10,11,12,很好判断,只需知道y,y + 20分别是闰年还是平年就可以了;若m = 2;分4种情况进行讨论:(1)y闰(y+20)闰;(2)y闰(y+20)平(3)y平(y+20)闰;(4)y平(y+20)平;