вторник, 4 марта 2008 г.

Project Euler, статистика

Попробывал собрать статистику по странам из top 1000 Project Euler.
Получилось вот что:
('USA', 257)
('Sweden', 47)
('Germany', 45)
('England', 45)
('Netherlands', 41)
('Russia', 36)
('Canada', 33)
('France', 31)
('Australia', 26)
('India', 20)

Скрипт -

import urllib

import re

countries = {}

p = re.compile("<img src=.*?images/flags/(.*?)\.gif")

for page in xrange(1,11):

    for e in p.finditer(urllib.urlopen("http://projecteuler.net/index.php?section=top&page=%u"%(page,)).read()):

        countries[e.group(1)] = 1 + countries.get(e.group(1),0)

countries = sorted(countries.items(), key=lambda (k,v): (v,k))

countries.reverse()

for c in countries[0:10]:

    print c



От Украины 15 участников в top 1000.
Интерпритировать результаты не берусь. Просто забавно.

Комментариев нет: