Python Challenge 第十五关

第15关,题目是 whom? 有一张图片,是个日历。日历的年份是 1XX6,中间是被挖去的洞。然后图中1月26日被画了个圈,当天是星期一。右下角的二月小图中有29号,可以得知这是闰年。然后查看源代码。有两行注释信息:

<!-- he ain't the youngest, he is the second -->
<!-- todo: buy flowers for tomorrow -->

他不是最小的,他是第二小的。记得明天买花。这样来看,这个人是男的。我们要求的可能是1月27日,星期二,买花的话可能是他的生日,而且很有可能是个已经过世的名人。所以,首先应该把符合要求的日期给求出来。去网上搜了下,Python 中跟日期有关的有 calendar 和 datetime 两个模块。

from calendar import isleap
from datetime import date

TUE = 1
for year in xrange(1006, 1997, 10):
    dobj = date(year, 1, 27)
    if isleap(year) and dobj.weekday() == TUE:
        print dobj.isoformat()

输出的结果为:
1176-01-27
1356-01-27
1576-01-27
1756-01-27
1976-01-27

然后把这几个日期到百度中搜索,只有1756年1月27号是莫扎特的生日。再去搜索莫扎特,在家排行老七,有一个弟弟和姐姐,前五个孩子都夭折。看来符合第二小的条件,就试试改 url 为 mozart,进入了下一关:http://www.pythonchallenge.com/pc/return/mozart.html

 

posted @ 2013-12-13 11:01  Kill Console  阅读(522)  评论(0编辑  收藏  举报