第24話 1001

「まずは、あるテクニックを教えるわ。素数判定をするときに役立つ、とても便利な方法よ」

「そんな方法があるんですか?」

 みぞれが身を乗り出して聞いた。伊緒菜は、みぞれの食い付きに気を良くし、にやりと笑った。

「その名も、1001チェックよ。これは、四桁以上の数が、7、11、13の倍数かどうかを同時にチェックできる、簡単で強力な方法なの」

「13の?」

 みぞれは暗算で素数判定をするとき、いつも13の割り算あたりで力尽きる。それが簡単にできるようになるなら、万々歳だ。

「でもその説明の前に、一つ質問。みんなは素数判定をするとき、頭の中でどんな計算してる?」

「どうって……普通に筆算してます」

 戸惑いながらみどれは答えた。その答えに、「えっ」と慧が驚いた。

「筆算してるの?」

「え、してないの?」

 伊緒菜はホワイトボードに「323」と書いて、二人に見せた。

「じゃあ、例えばこれは、素数かしら?」

「ええと」

 みぞれは頭の中で計算を始めた。3+2+3=8なので、3の倍数ではない。3-2+3=4なので、11の倍数でもない。7で割ると……。

 そこまで考えたとき、慧が答えた。

「いえ、17の倍数です。17×19ですね」

「正解」

「ええっ」

「なんでわかったの?」

 みぞれも津々実も驚いて慧を見ていた。伊緒菜が慧にホワイトボードを渡す。

「説明して」

「し、仕方ないですね」

 渋々といった体でボードを受け取る。

「まず、3の倍数でも11の倍数でもないのは、良いよね? 3を落とすと2が残るし、3+3-2は4だから」

「え、なにそれ」

 みぞれはそこで躓いた。自分の計算方法と違う。

「3の倍数判定法、覚えてるよね?」

「うん、全部足して3の倍数なら、3の倍数なんでしょ?」

「そうなんだけど……」

 慧は少し考えてから、「246」とボードに書いた。

「これが3の倍数かどうか判定しようと思ったら、足し算をする前に、まず『6』を消していいの。だって、もしこれが3の倍数なら、6を消しても3の倍数になるはずだからね」

「そうなの?」

「そうでしょ? だって、『3の倍数』から『3の倍数』を引いても、3の倍数になるから」

 慧はボードに式を書いた。

 3m-3n=3(m-n)

「m、nを自然数とすると、左辺の3mと3nはともに3の倍数。これらの差は右辺になるけど、これはm-nが整数だから、整数の3倍でやっぱり3の倍数になる」

「う、うん」

 みぞれはとりあえず頷いた。

「だから、『2+4+6』から、あらかじめ3の倍数だとわかる『6』を除いておいても、3の倍数判定には影響しないのよ。だから問題の『323』も、全部足す必要はなくて、『3』をあらかじめ除いて『2』だけ考えればいいわけ」

「じゃあ、11の倍数判定は? これってたしか、一の位から順に『-、+、-、+…』ってやっていくんだよね?」

「それでもいいけど、桁が少ないときは、『奇数桁を全部足して、偶数桁を全部足して、差を取る』って考えた方が早いと思う。こんな風に」

 慧はまたボードにペンを走らせた。

 323

 → 奇数桁だけ足すと「3+3=6」、偶数桁だけ足すと「2」

 → 差を取ると、「6-2=4」

「で、4は11の倍数じゃないから、323は11の倍数じゃない。こっちの方が簡単じゃない?」

 みぞれは納得した。たしかに一の位から順に「-、+」を入れるという計算と、いまの慧の計算は、同じ計算だ。

「そこまではわかった」と津々実が手を挙げた。「でも、323が17の倍数だってすぐにわかったのは、どうしてだ?」

「いまの場合、まず3と11の倍数じゃないとわかったから、次は7の倍数かどうかをチェックした。323に7を足すと330になるけど、33は7の倍数じゃないから、323も7の倍数じゃない」

「ちょ、ちょっと待って」みぞれが割って入った。「なに、いまの計算」

 伊緒菜がほくそ笑んでいる。私に説明させたかったのはここか、と慧は思った。

「さっき、3の倍数から3の倍数を引いても3の倍数になるって言ったでしょ? それと同じで、aの倍数にaの倍数を足したり引いたりしても、やっぱりaの倍数になるのよ」

 慧は再び数式を書いた。

 am±an=a(m±n)

「だから、323が7の倍数かどうかを判定するために、まず7を足したり引いたりして、判定しやすい数にしたの。今の場合は、足せば330になって、330=3×11×10なことはすぐにわかるから、7の倍数でないことがわかる」

 330をかけ算の形で表せば、7で割らずに7の倍数でないことがわかるのか、とみぞれは感心した。素因数分解がこんな風に役立つとは。

「次に13の倍数かどうかを調べたけど、これもすぐわかる。323-13=310で、310=31×10だから、やっぱり13の倍数じゃない。で、最後は17だけど」

 慧はボードに式を書き並べた。

 323+17=340

 340=34×10=2×17×10

「こうなるから、340は17で割り切れる。つまり、323も17の倍数だったってことよ」

「これをあんなすぐ計算したの?」

「慣れれば簡単にできる計算よ」

 慧はなんてことないように答えたが、みぞれにとっては魔法のような方法だった。すごいなぁ、とみぞれは尊敬のまなざしで慧を見た。

「それで」津々実が口を挟んだ。「伊緒菜先輩、1001チェックっていうのは、これと関係あるんですか?」

「ええ。1001チェックは、いま慧が言った『倍数に倍数を足したり引いたりしても、元の倍数のまま』という性質を使うわ。1001を素因数分解するといくつになる?」

「素数じゃないんですか?」

 言いながら、津々実たちはスマホを操作した。

「7×11×13です」

「その通り。ということは、1001は、『7の倍数』でもあるし、『11の倍数』でもあるし、『13の倍数』でもあるということ。だから、元の数に1001を足したり引いたりした結果、7、11、13の倍数になったら、元の数もその倍数だってわかるのよ」

 具体例を見てみましょう、と伊緒菜はボードに「4718」と書いた。

「これを1001チェックしましょう。やり方は簡単。まず、どの桁からでも良いから、1001を何度も引いて数を小さくしていく。4718だったら、1001を4回引きましょう」

 伊緒菜はボードに筆算を書いた。


 4718

-4004

―――――

  714


「1001を何回か引くと3桁の数にできるから、あとはそれが7、11、13の倍数かどうかチェックすればいい。714は、7も14も7の倍数であることから、7の倍数だとわかる。よって、元の4718も7の倍数だとわかるの」

 他の数でもやってみましょうか、と言って、伊緒菜は「15769」と書いた。

「1001はどこから引いても良いから、今回はまず上から1001を引きましょう」

 またボードで筆算した。


 15769

-1001

――――――

  5759


「そしたら、今度は5759から1001を5回引く」


 5759

-5005

―――――

  754


「これは、7、11、13の倍数になってる?」

 伊緒菜が質問すると、数秒で慧が答えた。

「13の倍数ですね」

「その通り。ということは、元の15769も、13の倍数だったってこと」

 津々実はしばらく思案顔だったが、やがて「なるほど」と呟いた。

「割り算より引き算の方が簡単だし、1001を引くだけなら暗算でもできる。倍数判定しやすい数になるまで、何度も1001を引けばいいってことですね」

「そういうことね」

「で、でも」みぞれはボードの「754」を指差した。「これが13の倍数かどうかなんて、わかりません。さっき慧ちゃんが言ってたみたいに、13を足したり引いたりしても、キリの良い数になりそうにないですし……」

「そうね。慧はいま、どうやって計算したの?」

「7と11の倍数でないことは、見た目でわかって……13×2=26ですから、754に26を足して780、78は13の6倍なので、754も13の倍数だとわかります」

「そんなの無理ぃ」

 みぞれが嘆いた。津々実もみぞれの肩を持つように聞く。

「見た目でわかるってなに? 勘?」

「勘じゃないわ。754=700+54で、700は7の倍数だけど54は7の倍数じゃないから、754は7の倍数じゃないとわかる。あと、7+4-5=6だから、11の倍数じゃないこともわかる」

「たしかに見た目でわかるね……」

 おそらく慧は、いまの計算を無意識でできるのだろうな、と津々実は思った。だから「見た目」という表現が口から出たのだ。

「慧の計算力はちょっと特殊だけど」と伊緒菜。「みぞれでもこれが13の倍数だと、簡単に判定できる方法があるわ」

「まだ何かあるんですか!?」

 みぞれは顔を上げて食い付いた。

「1001チェックとほとんど同じ方法よ。その名も、91チェック!」

「91……」みぞれは、過去の試合で見た記憶があった。「7×13、ですよね。前に慧ちゃんが出してた気がします」

「そうだっけ?」

 慧は覚えていなかった。伊緒菜は、相変わらずすごい記憶力ね、と思った。

「91を足したり引いたりしても、7、13の倍数であることは変わらない、ってことですか?」

 伊緒菜は頷いたが、

「でも、暗算で91を引くのは、ちょっと大変じゃない? 繰り下がりが出てきちゃうから」

 と言いながら、ボードに筆算した。


 754

- 91

――――

 663


「人間の頭は、繰り下がりの引き算を暗算できないわ。そこで、91を引く代わりに、101を引いて10を足す、という方法を使う」


 754

-101

+ 10

――――

 663


「こっちの方が簡単そうでしょ?」

 1001を引くのが簡単だったように、101を引いたり10を足したりするのも比較的簡単だ。

「ええと、754の場合は、707を引いて、70を足せば良いんですか?」

「どっちかな……たぶん、404を引いて40を足した方が良いじゃないかしら」


 754

-404

+ 40

――――

 390


「ここで39に注目すると、これは明らかに13の倍数でしょ?」

 明らかだろうか、とみぞれは思ったが、確かに13×3だ。

「だから754は13の倍数だし、元の15769も13の倍数だってことになるのよ」

 説明は以上だった。みぞれ達は各々、伊緒菜の説明を頭の中で反芻して、理解していく。その様子を見ながら、伊緒菜は付け加えた。

「2、3、5の倍数はこれまでも簡単に判定できたと思うけど、1001チェックを使えば7、11、13も簡単に判定できるようになる。これで、13までの素数の判定が、簡単にできるようになるのよ」

「それより上はないんですか?」

 津々実が当然の疑問を口にする。

「あることはあるわ。まず、969クロックチェック。969は、17×19×3なの。でも、これを引いたり足したりするのはちょっと大変だから、私は使ったことないわね」

 1000-31=969なので、1000を引いてから31を足す、という方法が使える。慧は、そのくらいならできそうだと思った。

「もうひとつ有名なのは、2001チェック。これは私もたまに使うわ。23×29×3よ」

「ってことは」津々実が整理する。「1001チェック、969チェック、2001チェックを全部使えば、29までの素数が全部判定できるってことですか」

「便利でしょ?」

 これらを使っても、四桁以上の数を素数だと「確定」させることはできない。だが29までの割り算をしなくて済めば、計算時間を大幅に減らせる。それに、素数である「確率」を上げることもできる。

「簡単簡単とは言ったけど、試合中に1001チェックや2001チェックを使えるようになるには、ある程度の練習が必要よ。というわけで、合宿の最初のメニューは、この二つの練習として、あるゲームをしましょう」

 伊緒菜はトランプを箱から出して、シャッフルした。

「いまから、私がランダムに四枚のトランプを出すから、それが1001チェックと2001チェックを通るかどうか、なるべく早く判定してね。素数かどうかは判定しなくていいわ。最初に判定できた人に+1点、最初に判定できても間違ってたら-1点。10回やって一番点の高かった人が優勝」

「優勝者には何か出るんですか?」

 津々実が目を光らせる。

「え? ううん……」伊緒菜は眼鏡を押し上げ、「夕ご飯が少し豪華になるかも?」

「ご飯か……」

 食べ物に釣られるほど子供ではなかったが、賞品には違いない。

 みぞれは真剣な目になった。これまで試合中に、13や23の倍数を出してしまったことは、何度もあった。計算の苦手なみぞれはずっと勘と記憶を頼りに戦ってきたが、1001チェックをものにすればより精度よくカードが出せるようになるだろう。

「最初は、これ!」

 伊緒菜がカードを4枚出した。5、3、Q、A。

「53121をチェック!」

 ええとええと、とみぞれは頭を回転させた。53121から1001を引くと、52120になって、上から1001を5回引くと……あれ、これだと繰り下がりが出ちゃう。

 みぞれが繰り下がりに苦闘している間に、慧が言った。

「1001も2001も通ります。どの倍数でもないです」

 伊緒菜はスマホを見て、

「正解!」

「はや……」

 計算力では慧に勝てないのだろうか。みぞれの横で、津々実が呟いた。

「なんとなくコツがわかった気がする。なるべく繰り下がりが出ないように引き算した方が良いんだな。今の場合、上から5005を引こうとしたのがまずかった。2002を引かなきゃいけなかったんだ」

 伊緒菜がホワイトボードに得点表を書いた。慧に1点を追加する。

「では第2問!」4枚のカードを並べる。「6KAJをチェック!」

 みぞれは、この方法の欠点に気付いた。トランプは11以上の数がJQKのアルファベットで書かれているため、パッと見で桁数がわからない。だから、1001を引こうにも、千の位がどこなのか瞬時に判断できないのだ。

 6KAJを数字に変換すると、6、1、3、1、1、1。だから千の位は、ええと、3だ。つまり1001を引くと、612110になる。そしたら今度は上から1回引くと、一番上は5になって、その下は……。

「23の倍数です」

 突然慧が言った。

「正解!」

 と伊緒菜が宣言する。

「うっそ、はや。あたし、1001チェックが終わったとこだよ」

 みぞれは1001チェックすら終わっていなかった。やっぱり二人ともすごいなぁ、と改めて感心する。

「さすが慧は早いわね。何かコツとかある?」

 得点を書きながら伊緒菜が聞く。

「コツと言いますか……2や3で割ったりもしてます。いまの613111なら、1001を引いていくと502になるので、これを2で割ります。すると251になりますが、これは素数なので、7、11、13の倍数ではありません」

 みぞれはぽかんとした。

「割っても良いの?」

「うん。2で割っても、7の倍数かどうかには影響しないから」

 7の倍数を2で割っても7の倍数だ。また、7の倍数でない数を2で割っても、7の倍数になったりはしない。これも素因数分解を使えば理解できる。「2×7×○○」で表される数を2で割っても、7の倍数であることは変わらない。

「さすがね。じゃ、第3問行きましょう!」

 伊緒菜は次のカードを出した。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る