Project Eulerを始めた


メンタルが大分安定してきたので、年明けから毎日のタスクとしてGitHubに草を生やすことを心がけている。 毎日少しずつでも進捗が出せるちょうど良い題材はないかと探していたところ、Project Eulerが数学のやり直しにも 良さそうなので始めることにした。

Project Euler is?

Project Eulerはプログラムで解くための数学の問題を集めたサイトで、2019年2月現在、650問以上掲載されている。


Problem 1

If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Find the sum of all the multiples of 3 or 5 below 1000.

Problem 2

Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …

By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.


Project Eulerを進める上では次の3つを主目的として念頭においている。

  1. コーディングの習慣化
  2. 数学の再学習
  3. アルゴリズム力向上


  1. 毎日最低1問は解く
  2. 力ずくで解かない(公式や定理、アルゴリズムを積極的に使う)
  3. ライブラリはできるだけ使わない(あえて車輪の再発明をする)

2つめについてはProject Eulerの公式サイトでも

I solved it by using a search engine, does that matter? Making use of the internet to research a problem is to be encouraged as there could be hidden treasures of mathematics to be discovered beneath the surface of many of these problems. However, there is a fine line between researching ideas and using the answer you found on another website. If you photocopy a crossword solution then what have you achieved?