見出し画像

【灘中学校2020年度入試(2日目)算数第2問】中学入試で符号…だと?

今回は灘中学校2020年度入試第2日の算数第2問です。2日目で最も簡単な問題ですが、タイトルの通りになかなか興味深い問題です。

画像1

灘中学校・高等学校
2011年8月28日、Saoyagi2撮影、Wikipediaより

[問題] この問題では,01234, 00123 なども5桁の数,012345, 001234 なども6桁の数とします。
また,整数 x が整数 y で割り切れるとき,x を y で割った余りは 0 であるとします。

(1) 太郎さんは 5桁の数 ABCDE を紙に書いて次郎さんに渡(わた)しました。ただし,A, B, C, D, E の中に同じ数字が含(ふく)まれても良いものとします。また,E は A + B + C + D を 10 で割った余りです。

次郎さんは A, B, C, D, E の中の 1 個を別の数字に書き換(か)えて花子さんに渡しました。花子さんが受け取った紙に書かれた数は 28973 でした。

(ア) 太郎さんが紙に書いた ABCDE として考えられる 5桁の数をすべて書きなさい。

(イ) 太郎さんははじめと同じ数 ABCDE を再び紙に書いて次郎さんに渡しました。次郎さんは A, B, C, D, E のうち先ほどとは異なる 1個を別の数字に書き換えて花子さんに渡しました。花子さんが受け取った紙には 21673 でした。

太郎さんが紙に書いた ABCDE は (    ) です。

(2) 太郎さんは 6桁の数 PQRSTU を紙に書いて次郎さんに渡しました。ただし,P, Q, R, S, T, U の中に同じ数字が含まれてもよいものとします。また,T は P + Q + R + S を 10 で割った余りで,U は P + Q × 3 + R × 7 + S × 9 を 10 で割った余りです。

次郎さんは P, Q, R, S, T, U の中の 1 個を別の数字に書き換えて花子さんに渡しました。花子さんが受け取った紙に書かれた数は 735631 でした。

太郎さんが紙に書いた PQRSTU は (    ) です。[問題終わり]

最初に言います。

この問題は秒で解きたい問題です。灘中学校の受験生にはやさしすぎます。

このあとに控(ひか)える問題を考えると、こんなところで時間を使っている場合ではありません。この問題は 5分使ったら多いと思って下さい。

(1) (ア) ですが、まずは花子さんが受け取った数字の上位 4桁を足して 10 で割った余りを求めると (2 + 8 + 9 + 7) = 26 で 6 が出てきます。下一桁は 3 と 3 小さいので、各桁から 3 引くか、引けないときは 7 を足します。ただし、下一桁だけは 3 を足します。したがって、98973, 25973, 28673, 28943, 28976 が答えになります。

(イ) では、花子さんが受け取った数字は 21673 なので、(ア) の答えの中で1桁だけ違う 28673 が ABCDE となります。

(2) も同じように花子さんが受け取った数字 735631 に対して  P + Q + R + S を 10 で割った余りと P + Q × 3 + R × 7 + S × 9 を 10 で割った余りを求めます。

・7 + 3 + 5 + 6 = 21 なので余り 1
・7 + 3 × 3 + 5 × 7 + 6 × 9 の下一桁だけ計算すると、7 + 9 + 5 + 4 = 25 で余り 5

(上記の結果)735615 と (花子さんの数字)735631 を比べると、
・下2桁目は花子さんの数字が 2 大きい
・下1桁目は花子さんの数字が 4 小さい
と両方違うので、上位4桁のいずれかが変わったことになります。

あとは、花子さんが受け取った数字の各桁を 2 増やして下1桁目を比較すればいいだけです。

すると、カンがいいと一発で 755631 が得られると思います。

この問題はとにかく花子さんが受け取った数字の上位 4 桁を使って、書かれている条件とのズレを見るだけです。

さて、今回の問題ですが、おそらくは通信で使われる符号(ふごう)の問題とみて間違いないだろうと思います。こういう状況を考えてみて下さい。

太郎さんから花子さんへ、スマホで動画を送ろうとしています。2人が加入している携帯会社の名前は JIRO (次郎さん)。
動画のデータは実際には数字の列で表現されていて、数字の列を決められた長さ(=桁数)に区切って送ります。
ただし、電波の状況は場所によっていろいろで、場合によっては数字の列は送っている最中に書き換えられてしまうかもしれません。

これが今回の問題の設定(せってい)です。

書き換えられる数字の個数の上限が決められているときに、与えられた(書き換えられたかもしれない)数字の列から元の数字の列が分かるとき、元の数字の列の集まりを「誤り訂正符号(あやまりていせいふごう)」と言います。

また、書き換えられたことが発見できる場合は「誤り検出符号(あやまりけんしゅつふごう)」といいます。ここで、誤り=数字の書き換え、です。

今回の場合のように 1か所の誤りを訂正・検出できるときには 単一誤り訂正符号、単一誤り検出符号と言います。

誤(あやま)りが訂正(ていせい)できれば、多少の数字の書き換えがあっても直すことができるので正しく通信が行えます。

一方、検出(けんしゅつ)ができるだけでもとても役に立ちます。書き換えがあったとしても、誤りがあったと分かればもう一度同じ情報を送ってもらうことができるので、正しい情報が得られるまで何度でも情報を送ってもらえばいいのです。

通常、誤り訂正符号や誤り検出符号は 0 と 1 の列で作りますが、今回は 0~9 で作ろうとしています。

(1) は単一誤り検出符号になっていて、(ア) で花子さんは2回数字を送ってもらうことで正しい(太郎さんの)数字を受け取ることに成功した、という話です。

0 と 1 の列でも、1 の個数が偶数個になるようにしてあげれば1か所の書き換えならば検出ができます。

(2) は単一誤り(1か所の書き換え)を訂正(元に戻)していますが、残念ながら誤り訂正符号にはなっていません。

例えば、755631 と 700631 はどちらも条件を満たす数字ですが、花子さんが 750631 を受け取ると上から 2桁目と 3桁目のどちらを変えたらいいのかが分からなくなります。(実は 750131 も条件を満たします。)

今回の (2) では答えは 1つでしたが、そうならない場合もあるので、単一誤り訂正符号と言えないわけです。

今回の問題はやさしいので、受験生を落とすという意味ではいい問題ではないかもしれませんが、有意義で興味深いという意味では非常にいい問題だと思います。

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