PEをMathematicaで

Project Eulerに挑戦してみよう

Project Euler 9 / 特別なピタゴラス数

ピタゴラス数とは a < b < c かつ a^2 + b^2 = c^2 をみたす数の組である。

a + b + c = 1000 となるピタゴラスの三つ組が一つだけ存在する。これらの積 abc を計算しなさい。

Problem 9 - Project Euler

Mathematica は解の範囲として Integers を指定するだけで方程式の整数解を求められます。


今回,実は解の a, b, c を再利用するところで苦労しました。下の実行結果のように Solve の解はリスト形式で与えられ,「a -> 200」のような余計な文字列を含みます。これを置換のルールとして取り出して「/.」で ReplaceAll して代入しています。多分定石なんでしょうが,はじめて使いました。