「あるホテルでは客室番号に””、””、””を使用しない。このとき次の問いに答えよ。
(1)小さい順で45番目の客室番号は何番か?
(2)小さい順で300番目の客室番号は何番か?
(3)””号室の客室は小さい順で何番目か?」
このような問題はどのように解けばよいのでしょうか?
この問題を解くには繰り上がりに着目します。
(1)
通常、””から””までの10個の数字が使用されていれば10室ごとに十の位へ繰り上がります。
しかし、””、””、””を使用しない、すなわち7個の数字しか使用しない場合は7室ごとに十の位へ繰り上がることになります。
しかし、””、””、””を使用しない、すなわち7個の数字しか使用しない場合は7室ごとに十の位へ繰り上がることになります。
そこで45番目の客室までに何回十の位へ繰り上がるのかを調べると
となるので、6回繰り上がり一の位が増えることがわかります。
このことから十の位は””となりますが、ここで使用しない数字を考えると””と””が使用されていないので十の位が””より2つ分ずれるため、を足します。
したがって、十の位への繰り上がり回数と十の位の欠番による調整のと余りのより
45番目の客室番号は””であることがわかります。
何回1つ上の桁に繰り上がるかを求める方法はn進数への変換方法の考え方です。
この問題の場合は7個の数字しか使用しないため、7進数の問題と見ることができます。
ただし、通常の7進数は””、””、””を使用しないのですが、この問題では使用しない数字が”、””、””になっているので、少し変わった7進数となります。
(2)
(1)と同様に解き、7進数ではどうなるのかを求めます。
より、十の位へは42回繰り上がることがわかります。また、余りより一の位はです。
百の位への繰り上がりは十の位への繰り上がり42回のうち
6回行われます。このとき、余りはなので十の位はとなります。
以上より、7進数では
となり、上の対応表にしたがって変換すると客室番号は””であることがわかります。
対応表を使用しない場合は、””と””が使用されていないことから百の位と一の位がそれぞれ””から2つ分ずれるためを加えて客室番号が””となることがわかります。
(3)
(1)、(2)とは逆の手順で求めます。
対応表より元となる7進数はであることがわかります。
対応表より元となる7進数はであることがわかります。
百の位はなので、2回十の位から繰り上がっているので
一の位からの繰り上がりは上のと十の位のの和回なので、
これに一の位のを加えたが客室番号を10進数に変換したものなので、””号室は小さい順で番目であることがわかります。
一度の計算で変換するには十の位の数は7倍、百の位は7倍の7倍、つまり49倍、…というように一の位から離れている分だけ各桁にを掛けます。
\begin{align*}2\times7^2+4\times7+6&=2\times49+4\times7+6\\[0.5em]&=98+28+6\\[0.5em]&=132\\end{align*}
Share: