虫食い算
虫食いになった数字を当てる問題
From Wikipedia, the free encyclopedia
名称
歴史
虫食い算の具体的な起源ははっきりしていないが、日本では、江戸時代の和算書や算額などにも残されている。日本で記録に残っている古い問題としては、中根彦循の『竿頭算法』(1738年(元文3年))に掲載されている問題が挙げられる[2][3]。また、欧米でも古くから計算の練習問題として使用されていた。
1906年(明治39年)にイギリスの数学者ウィリアム・ベリック(1888年-1944年)は「7つの7」という作品を発表した。これは、ヒントとなる数字が7個に対して72個もの□があるという作品であり、見た目に美しく知的な虫食い算の元祖ともいわれる[4]。
7つの7 □ □ 7 □ □ □ □ □ □ 7 □ ) □ □ 7 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 7 □ □ □ □ □ □ □ □ □ 7 □ □ □ □ □ 7 □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 7 □ □ □ □ □ □ □ □ □ □ □ □ □ □ 0
意味のある単語を使用した覆面算(ワード覆面算)に関しては、ヘンリー・アーネスト・デュードニー(1857年 - 1930年)が1924年に発表した SEND+MORE=MONEY という作品が最初といわれる[5]。
S E N D + M O R E M O N E Y
1931年にベルギーで数学遊戯雑誌"Sphinx"(fr)が創刊される。「虫食い算」に相当する英単語の1つである"Cryptarithmetics"は同誌によって提唱された[6]。
1940年代になると、主流は虫食い算からワード覆面算に移行していく。1947年にアメリカのアラン・ウェインは最初の数詞覆面算を発表している[6]。その後カナダのJ.A.ハンターがワード覆面算を"Alphametics"と命名して普及に努めた[6]。
戦後の日本
日本においては和算による虫食い算も存在したが、昭和初期には西洋の虫食い算が紹介されている。戦前から戦中に虫食い算を紹介した人物として高木茂男は藤本幸三郎、楠本虎四郎、佐野昌一、江口雅彦の4人を挙げている[7]。このうち、楠本以外の3人は当時紹介のみで創作を行っていなかったとされる。
- 1946年(昭和21年)
- 佐野昌一『虫食い算大会』が出版される。
- 1947年(昭和22年)
- 文部省発行の算数・数学の教科書に虫食い算が掲載される[7]。
- 昭和20年代
- 大学入試の進学適性検査の問題として毎年のように虫食い算が出題された[7]。
- この時期に創作を開始した人物としては泉行蔵、森本清吾、夏目康男、江口雅彦、佐藤米吉らの名前が挙げられる[7]。
- 高木茂男が「年賀虫食い算」を始めたのもこの時期である[7]。
- 1964年(昭和39年)
- 雑誌『数芸パズル』創刊。虫食い算を含む様々なパズルの発表の場が与えられた。
- 1976年(昭和51年)
- 雑誌『詰将棋パラダイス』に「虫食算研究室」のコーナーができる。
- 読者から問題・解答を募る形式のため、多くの作品が寄せられた。
- 丸尾学・山本行雄・浅尾和義が担当を勤め、22年続いた。
- 1980年(昭和55年)
- 雑誌『パズル通信ニコリ』創刊。
- 創刊当初から虫食い算・覆面算に数ページを割いており、17号からは「スージーコーナー」という独立したコーナーとなっている(71号まで)。
- 5号より毎号テーマを決めて覆面算を募集していたが、投稿数低下のため107号(04年夏号)からは不定期連載となった。
- 着順発表と呼ばれる覆面算の解答競争も行われていた(現在でも同コーナーは存在するが、パズルは覆面算に限らなくなっている)。
ルール
- □には一つの数字が入る[8]。
- 最上位の□には0は入らない。ただし、小数点で始まる小数の場合は最上位に0が入ることがある。また、小数点で始まる小数の場合は最下位に0が入らない[8]。
- 1桁の□があった場合、最上位の条件を満たすので0を入れないとする考え方が一般的である。
狭義の虫食い算の問題では1つの□に入る数字は1つであるが、広義の虫食い算には空欄に複数の数字が入ることもある。筆算でない問題[注釈 1]が多いが、筆算でも上位または下位の数字をまとめて隠すことがある[9]。
解答は1つに定まる場合が大原則であり[8]、これを
例題
虫食い算大会 第三会場(2)の問題 [11]
| □ | 7 | □ | 6 | □ | ||||
| × | 7 | |||||||
| 3 | □ | 2 | 9 | □ | 6 |
特別な虫食い算
虫食い算の中には、ヒント・形状・制約等から特別な名前を冠される物がある。
孤独のn
ヒントとして数字が1個のみ提示されているものを総称して「孤独のn」と呼ぶ[12]。割り算において割り切れたことを示す最下段の0は除いて考える。この呼称は、1923年頃にE・F・オドリングが発表した作品「孤独の7」に由来する[13]。
孤独の7 □ 7 □ □ □ □ □ □ ) □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ 0
完全虫食い算
ヒントとして数字が全く提示されていないものを完全虫食い算と呼ぶ。まったく条件のつかない完全虫食い算の例としては、
- □+□+□+□+□+□+□+□+□=□
がある[14]。しかし、通常は何らかの制約条件(小数点・循環小数・使用数字の制限など)が加えられる。このとき、制約条件の一つとして割り算において割り切れたことを示す最下段の0はあってもよい[14]。
- 例題 □には0以外の偶数が入る。
□ □ □ × □ □ □ □ □ □ □ □ □ □ □ □
小町虫食い算
□の中に1~9(あるいは0~9)の数字が1つずつ入るように指定したものを小町虫食い算と呼ぶ。この呼称は、1~9を使い100を表す小町算にちなんでいる[15]。
- 例題 小町虫食い算 ――1から9までの9種の数字をはめこむ(9と4はすでに使いずみ)[16]
0~9を2個ずつ・3個ずつ使用する問題もあり、それらは「ダブル小町」「トリプル小町」などとも呼ばれる。1943年にオランダの数学者Fred. Schuh(1875年 - 1966年)はダブル小町完全虫食い算という条件作を発表している[17]。
- ダブル小町完全虫食い算 ―― □のなかには0から9までの数字が2つずつ入る。
□ □ □ × □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □ □
多重虫食い算
升目の中に色違いの物を配置し、色違いの升目だけでも筆算が成り立つようにする問題を多重虫食い算という。制約が強く、数字が全くない完全虫食い算になることが多い[18]。
- 例題 ■で表された1桁×1桁=2桁の筆算も成り立つようにする。
□ □ □ □ □ ) □ □ ■ □ □ □ ■ ■ ■ □ □ □ □ □ □ □ □ □ 0
この例題は1桁同士の掛け算だが、2桁以上の掛け算で中間積もあるものもある。掛け算の部分が覆面算になっているものもある。
- 例題2 盤面の「かめ×かめ=かえる」も成り立つようにする
□ □ □ □ × □ □ □ □ □ □ □ □ □ □ か め □ □ □ □ か め □ □ か え る □ □
さらなる変化形として「A+B=C」のような式を盤面に配置し、各文字の値が式を満たすようにする問題もある。
グループ化
0~9を2つのグループ(偶数と奇数・4以下と5以上 など)に分け、グループによって入れる升目を変える問題。
バリエーションとして、特定の升目には同じ数字、他の升目にはそれ以外の数字を入れる問題もある。リチャード・P・ファインマンのものとされる「ファインマンの問題」はこのタイプの問題の中でよく知られているものの1つである。小野田博一は、盤面にイラストを配置し「イラストは特定の2数字のいずれか、白マスはそれ以外」という問題を創作し、自書や学習研究社の出版物などで発表している。
- 例題 ◇には素数(2,3,5,7)、◎にはそれ以外の数を入れる。
◎ ◎ × ◎ ◎ ◎ ◎ ◇ ◇ ◇ ◎ ◎ ◇
- 例題2 「梨」には7か4、□にはそれ以外の数字が入る
□ □ × □ 梨 梨 □ □ 梨 □ 梨 □
かけ算と割り算以外の虫食い算
加減算
足し算と引き算は、虫食い算より覆面算の作例が多い。理由としては□に制約がなく数字を入れ替えた別解が発生しやすいことがあげられる。
以下の問題は一意解である。
- 12□ + 3□4 = □56
- □ + 7□ + □□ + □□ = □1
算数の演習問題として虫食い算が出題されるときには、1つの□に複数桁の数字が入ることがある。以下はその一例である。
- 123 + □ = 789
数学記号
数学記号や関数を使用した虫食い算が存在する。これらは数学の知識が必要になるので通常の問題ほど多くは発表されていない。以下はその一例である。
- √□! + (□!)! = □
- log□□□0□ + log□□0□□ = □0
平方根
筆算による開平を元にした虫食い算が存在する。大駒, 武 & 丸尾 (1985, p. 71)には問題が収録されているが、現在では義務教育で教えられていないため、この形式の問題を見ることはほとんどない。
- 例題 開平算
□ □ □ √ □ □ □ □ □ 9 □ □ □ □ □ □ □ □ □ □ □ □ □ □ 0
十字問題
数字を格子状に配置し、タテヨコに並ぶ数をつないで式を作り成り立たせる問題。1930年頃のドイツで見られた形式であり、日本では楠本虎四郎が自著で複数の問題を発表している[7]。
- 例題
□3 × □ = □□ + - + □□ - □ = □ = = = □□ × □ = □□□
大きい虫食い算
一部の虫食い算は、自由に桁数を増やすことができる。例えば上の例にある完全虫食い算は、
- □+…(10n-1個)…+□=□…(n桁)…□
または
- □…(n桁)…□×□□=□…(n+1桁)…□
としても一意解である[19]。このため、最大の虫食い算は存在しない。ただし、このような手法に頼らない大型虫食い算は存在する[20]。
1999年(平成11年)から『パズル通信ニコリ』誌の編集長を務めている安福良直は、学生時代に商が20000桁を超える割り算の虫食い算を作成して同誌に投稿したことがある。大きすぎて掲載できないため、最初の20桁ほどが紹介された。安福 (2008)に詳しい顛末と理論が記されている。
コンピューターを用いて虫食い算を解く場合、桁数は計算時間に影響する。 2つの数字の掛け算が筆算の形で与えられた問題は、NP完全であることが知られている[1]。
問題の解答
| 5 | 8 | 7 | 8 | 1 | ||||||||||||
| 1 | 2 | 5 | 4 | 7 | 3 | ) | 7 | 3 | 7 | 5 | 4 | 2 | 8 | 4 | 1 | 3 |
| 6 | 2 | 7 | 3 | 6 | 5 | |||||||||||
| 1 | 1 | 0 | 1 | 7 | 7 | 8 | ||||||||||
| 1 | 0 | 0 | 3 | 7 | 8 | 4 | ||||||||||
| 9 | 7 | 9 | 9 | 4 | 4 | |||||||||||
| 8 | 7 | 8 | 3 | 1 | 1 | |||||||||||
| 1 | 0 | 1 | 6 | 3 | 3 | 1 | ||||||||||
| 1 | 0 | 0 | 3 | 7 | 8 | 4 | ||||||||||
| 1 | 2 | 5 | 4 | 7 | 3 | |||||||||||
| 1 | 2 | 5 | 4 | 7 | 3 | |||||||||||
| 0 |
| 4 | 7 | 5 | 6 | 8 | ||||
| × | 7 | |||||||
| 3 | 3 | 2 | 9 | 7 | 6 |
| 2 | 2 | 2 | |
| × | 2 | 2 | |
| 4 | 4 | 4 | |
| 4 | 4 | 4 | |
| 4 | 8 | 8 | 4 |
| 1 | 7 | 9 | ||
| × | 2 | 2 | 4 | |
| 7 | 1 | 6 | ||
| 3 | 5 | 8 | ||
| 3 | 5 | 8 | ||
| 4 | 0 | 0 | 9 | 6 |
| 1 | 1 | 8 | |||||
| 9 | 2 | ) | 1 | 0 | ❽ | 5 | 6 |
| 9 | ❷ | ||||||
| ❶ | ❻ | 5 | |||||
| 9 | 2 | ||||||
| 7 | 3 | 6 | |||||
| 7 | 3 | 6 | |||||
| 0 |
| 5 | 3 | 5 | 7 | |||
| × | 2 | 6 | 5 | |||
| 2 | 6 | 7 | 8 | 5 | ||
| 3 | 2 | 1 | 4 | 2 | ||
| 1 | 0 | 7 | 1 | 4 | ||
| 1 | 4 | 1 | 9 | 6 | 0 | 5 |
| 1 | 8 | |
| × | 4 | 9 |
| 1 | 6 | 2 |
| 7 | 2 | |
| 8 | 8 | 2 |
| 1 | 9 | |
| × | 3 | 4 |
| 7 | 6 | |
| 5 | 7 | |
| 6 | 4 | 6 |
| 3 | 1 | 7 | ||||
| √ | 1 | 0 | 0 | 4 | 8 | 9 |
| 9 | ||||||
| 1 | 0 | 4 | ||||
| 6 | 1 | |||||
| 4 | 3 | 8 | 9 | |||
| 4 | 3 | 8 | 9 | |||
| 0 |
| 13 | × | 7 | = | 91 |
| + | - | + | ||
| 12 | - | 3 | = | 9 |
| = | = | = | ||
| 25 | × | 4 | = | 100 |