project euler 19: Counting Sundays

import datetime
count = 0
for y in range(1901,2001):
    for m in range(1,13):
        if datetime.datetime(y,m,1).weekday() == 6:
            count += 1
print count


datetime此功能很好用。省去了计算的麻烦。

count = 0
days = 1
year = 365
normal = [31,28,31,30,31,30,31,31,30,31,30,31]
leap = [31,29,31,30,31,30,31,31,30,31,30,31]
for i in range(1900,2001):
    if i % 4 ==0 and i != 1900:
        year = 366
        temp = leap
    else:
        year = 365
        temp = normal
    for j in range(12):
        if days%7 == 0:
            count += 1
            days += temp[j]
        else:
            days += temp[j]

print(count)

 

posted on 2016-05-04 19:21  zhourong1104  阅读(198)  评论(3编辑  收藏  举报