Игры для математиков и программистов

Jan 31, 2012 13:33



Случайно бродя по интернету я забрел на обсуждения того, в какие игры играют программисты (и отчасти математики), где был среди прочего упомянут такой "Проект Эйлер" (у которого есть полная русская версия вот тут). 
Что представляет собой проект? По сути это довольно большое количество (сейчас 369) математически несложных, но довольно интересных задач, сложность имплементации которых постепенно возрастает. 
Вот самая первая задача:


Если выписать все натуральные числа меньше 10, кратные 3 или 5, то получим 3, 5, 6 и 9. Сумма этих чисел:  23.

Найдите сумму всех чисел меньше 1000 кратных 3 или 5.

Задачи составлены так, что для их решения требуется найти оптимальный алгоритм: и если первые задачки можно решить тупо "в лоб", то задачи с номером "за сотню" уже требуют оптимизации алгоритма и сокращения поля перебора. 
Например такие задачи как найти 10001-е простое число, сумму цифр числа 21000 можно довольно тривиально -- главное правильно выбрать типы данных чтобы не было переполнения (а там легко переполняется даже unsigned long во многих, казалось бы, простых задачах). Многие задачи просто интересно решать -- например взлом XOR-кода или поиски пандигитальных простых чисел.
После начальной эйфории, когда я за два дня решил 25 задач и получил первый уровень, я стараюсь подходить к решению к удовольствием и решаю задачи медленно, старательно читая ветки форума, который открываются после решения очередной задачи и где можно посмотреть примеры решения этой задачи на других языках, в частности на интересных мне Scala и Haskell.
Если кому-то интересно -- присоединятесь и добавляйтесь в друзья -- таким образом можно видеть прогресс друг друга. Вот мой токен для добавления в друзья: 
20504031296815_b841fc9430f1276528db0b347b498b73

personal, mathe

Previous post Next post
Up