Project Euler 15「格子経路」をPython3で書いてみた[解答]

問題文はこちらに日本語訳が載っています。

Problem 15 – PukiWiki

問題文

2×2 のマス目の左上からスタートした場合, 引き返しなしで右下にいくルートは 6 つある.
[f:id:nariagarix:20170305230301j:plain]
では, 20×20 のマス目ではいくつのルートがあるか.

コンビネーション使うだけですね。
こんな簡単でいいの?って感じですが、コードはこんな風になりました。

import math
m = 20
n = math.factorial(m*2)//(math.factorial(m) * math.factorial(m))
print(n)

結果

137846528820

factorial関数を使うとめちゃくちゃ簡単ですね。

メニューを閉じる