2022.Sep.29th

 小学2年生の算数、それもかけ算を習う前に置かれている問題だそう。さてどう解いたものかな、と。

 まあぜんぜんやりようあるので、どうせならちょっと小難しくやってみようかなと。

 柿にあてはまる値をx、苺にあてはまる値をyとすると、以下のような式が立てられる。
  20x + 13y = 192

 これはアレですね。数Aの不定方程式ってやつですね。解き方忘れたわ


 ということで青チャート数Ⅰ+Aを引っ張り出してきました。さあ解いていきましょう。

不定方程式って何

 「不定方程式」というのはその名の通り、解の組が一組に定まらない方程式を言います。
 「x + y = 5」という方程式を例に挙げましょう。解の組は
  (x, y)=(0, 5), (1, 4), (2, 3), (3, 2), (4, 1), (5, 0)
 あたりが簡単に思いつきます。「x, y はいずれも0以上の整数」という範囲だけでこの数なので、整数全体や実数全体にまで範囲を広げると、この方程式の解の組はそれこそ無限に存在すると言ってよいでしょう。

 解が無数にあるならなんでもいいんじゃないのと思いたくもなりますが、「x + y = 5」という方程式においては(x, y)=(3, 4)ではいけないのは分かると思います。「x=3」に対しては「y=2」、「y=4」に対しては「x=1」となるはずですよね。
 上記のように、片方の値が決まるともう片方も決まるのですから、xとyに共通な変数kを用いて
  x = ak + c
  y = bk + d (a, b, c, d は定数)
 このように表すことを「不定方程式を解く」とか「不定方程式の一般解を求める」とか言ったり言わなかったりします。

不定方程式を解いてみよう

 まずは今回の問題を整理しましょう。初めに書いた通り、今回解くべき不定方程式は
 20x + 13y = 192 …… ①
 また、xとyはいずれも「0から9までの整数」ですから、いちおう
 0≦x≦9、0≦y≦9
 とも書いておきましょう。

 一般解を求めるには、まず「方程式を満たす解の組ひとつ見つける」ことが必要です。うーーーーーんやっぱりここは納得いかん。だってこれまでに習った「方程式を解く」っていうのは、「x=1, 2, 3, ……」を当てはめていって「あっこれかあ! この方程式の解はx=163だ!」とすることでは決してないわけじゃないですか。逆算してピタッと「x=163」という解がただ一つ出る、それが「方程式を解く」だったわけじゃないですか。なんで今更こんな苦行を、しかも2変数でやんなきゃいけないんですか。

 解がすぐに見つかる問題(上述の「x+y=5」とか)ならその解の組を使えばよいでしょう。今回の問題もぶっちゃけ小学2年生向けなのでそんなに悩むほどのものでもありません。しかし高校数学においては分数や負の数が絡んできて、解がすぐに見つからないこともままあります。
 でも大丈夫。ユークリッドの互除法を使うことで、ピタッと解を見つけることができます。

ユークリッドの互除法を使おう

 「ユークリッドの互除法」はカンタンに言うと「互い違いに割り算を続けること」です。個人的なイメージとしては泥沼の殴り合いです。
 A、Bという自然数(0で割ると大変なことになるので)があり、まず最初に「A÷B」という割り算をして、何らかの商と余りを得たとします。この余り C としましょう。式に表すと以下のようになります。
  A ÷ B = (商) あまり C
 勢力Aは勢力Bの攻撃により大きく数を減らします。しかし勢力Bは勢力Aを割り切ることができず、C人の敵兵を取り逃がしてしまいました。余った残されたC人の敗残兵たちは毎晩薪に臥す思いで機を窺うことn年、勢力Bへと攻撃を仕掛けるのです。
  B ÷ C = (商) あまり D
 少数精鋭の勢力Cは勢力Bに深手を負わせます。しかしかつての勢力Bのように、勢力Cもまた一歩及ばず、D人の敵兵を取り逃がしてしまいます。残ったD人もまた、毎日胆を嘗めるような思いで鍛錬に励み、勢力Cへと反撃するのです。
  C ÷ D = (商) あまり E
 このように「割り算をしたあと、割る数を余りで割る」というのを繰り返していき、割り切るか余りが1になるまで続けます。

 それでは実際にユークリッドの互除法を使っていきましょう。不定方程式の問題では、x、yの係数について互除法を行います。
  20 ÷ 13 = 1 あまり 7
  13 ÷ 7 = 1 あまり 6
  7 ÷ 6 = 1 あまり 1
 ということで余りが1になったので互除法はおしまいです。ところで、「あまり」という表現は計算をするのには扱いにくい概念です。ですから、「あまり」を使わない形に書き換えます。それぞれ以下のようになります。
  20 = 13*1+7
  13 = 7*1+6
  7 = 6*1+1
 これをさらに「(余り)=(その他)」の形にします。
  7 = 20 - 13 ……②
  6 = 13 - 7 ……③
  1 = 7 - 6 ……④
 そして④式をもとに、③式や②式を代入していきます。
  1 = 7 - 6
    = 7 - ( 13 - 7 )(③を代入)
    = 7*2 - 13
    = ( 20 - 13 )*2 - 13(②を代入)
    = 20*2 - 13*3
 最後に左右を入れ替えてあげて、①式と見比べてみましょう。
  20*2 - 13*3 = 1 ……⑤
  20x + 13y = 192 ……①
 もうお分かりですね。⑤式の両辺を192倍すれば、①式とほぼ全く同じ形になります。
  20*384 - 13*576 = 192 ……⑥
  20x + 13y = 192 ……①
 これで、①式を満たす解のうちに(x, y)=(384, -576)が存在することがわかりました。「方程式を満たす解の組ひとつ見つける」、これにて落着。ホンマか???いくらなんでもデカすぎんか???

一般解を求めよう

 このあとは⑥式と①式で辺々の差を取ります。
  20*384 - 20x - 13*576 - 13y = 0
 因数が20同士、13同士の数を括弧でくくったあと、左右に分けます。
  20*( x - 384 ) = -13*( y + 576 )
 ここで、x、yはいずれも整数ですから、( x - 384 )は-13の倍数、( y + 576 )は20の倍数になるはずです。ですのでここで整数kを用いて
  x - 384 = -13k
  y + 576 = 20k
 これをx、yについて整理してあげましょう。
  x = -13k + 384
  y = 20k - 576
 これにて「一般解を求める」については以上です。
 (途中、便宜上「-13の倍数」という表現をしていますが、あんまり一般的ではないことはおことわりしておきます。)

整数解を求めよう

 今回の問題はx、yの取りうる値の範囲が決まっています。そう、
  0≦x≦9, 0≦y≦9
 でしたね。
 ここまで来てしまえばやることはそんなに複雑ではありません。単にこの不等式のxまたはyに上記の一般解を代入するだけです。
  0 ≦ -13k + 384 ≦ 9
  -384 ≦ -13k ≦ -375
  375 ≦ 13k ≦ 384
  28.846153…… ≦ k ≦ 29.538461……
 kは整数でしたから、これを満たすものを考えると
  k = 29

 yについて同じことをしてもちゃんと同じkが出ます。不思議
  0 ≦ 20k - 576 ≦ 9
  576 ≦ 20k ≦ 585
  28.8 ≦ k ≦ 29.25
 これを満たす整数 k = 29

 この k = 29 をx、yの式に代入してあげれば今回の問題はおしまいです。
  x = -13*29 + 384 = -377 + 384 = 7
  y = 20*29 - 576 = 580 - 576 = 4
 ということでお疲れさまでした。柿=7苺=4でおしまいです。


小学算数で解いてみよう

 ところでこれ小学2年生向けの問題なんですよ。方程式も割り算も習ってないんです。じゃあどうすんの、という話。ぜんぜん難しくないのでこちらも解説します。

 まず一の位に注目します。「苺3個」で「一の位が2」です。同じ数を3つあつめて、一の位が2になるものといえば何でしょう。探してみましょう。

1+1+1 = 3
2+2+2 = 6
3+3+3 = 9
4+4+4 = 12
5+5+5 = 15
6+6+6 = 18
7+7+7 = 21
8+8+8 = 24
9+9+9 = 27

 そう、3つあつめて一の位が2になるものは4しかないんです。この時点で苺=4とわかります。
 そうしたらあとは筆算の式に当てはめるだけです。

  柿4
  44
+ 柿4
――――
 192

 192 - ( 4+44+4 ) = 192 - 52 = 140
 ですから、2つあつめて14になる数を探せばよいですね。7です。
 ということで、柿=7苺=4という答えが出せます。


 ということで今月の雑記、「使わないと忘れる知識トップ3くらいにいるユークリッド互除法」でした。
 2022も残すところ3カ月、頑張っていきましょう。

 それでは、また。

この記事が気に入ったらサポートをしてみませんか?