Maxima で綴る数学の旅

紙と鉛筆の代わりに、数式処理システムMaxima / Macsyma を使って、数学を楽しみましょう

-数学- 母関数を使ってドラゴン桜2021 整数問題\(a^2+b^2+c^2=2020\)に挑戦

f:id:jurupapa:20210504120524j:plain

 

2021年4月〜6月のクールで放送されたTBS日曜劇場「ドラゴン桜」というドラマ

で、東大受験に挑戦する高校生達が描かれ、その中でいくつか数学問題も登場したそうです。それらがYoutubeやブログなどでも取り上げられて、目にする機会がありました。下記のyoutubeビデオではドラマの最終回に数学問題を提供した方が、その問題の解き方を解説しています。

問題:\(a^2+b^2+c^2=2020\)を満たす自然数\((a,b,c)\)の組を全て求めよ

こういう形で整数問題が提示されると、すぐにタクシー数問題でも使った母関数が浮かびます。

$$ (\sum_{n=1}^{\infty} x^{n^2})^3 $$

を展開して、\(x^{2020}\)の係数を見れば、このような自然数の組の数がすぐに分かります。実際には\(\infty\)まで計算する必要はなく\(\sqrt{2020} \lt 45\)なので\(n=45\)まで計算すれば十分です。やってみると(下記のノートブックを参照)分かるのですが、係数は6です。つまりそのような自然数の組は6つあることが分かります。

 

この母関数に関する考察をあと一歩進めるとこの問題を解決することが出来ます。

$$ (\sum_{n=1}^{\infty} x^{n^2})^2 $$

という母関数(3乗が2乗になっていることに注意)の展開式の各項の次数は2つの平方数の和です。従って2020から各項の次数を引いた数が平方数であれば、2020は3つの平方数の和であることが分かります。

 

この考えをほぼそのままMaximaで計算してみたのが、このノートブックです。