京都大学2024年文系数学第4問(解答・解説)


2005年に日本ジュニア数学オリンピックで同じような問題(十進法と五進法で桁数が変わらない自然数の個数を問う問題)が出されています(日本ジュニア数学オリンピック(JJMO)2005年予選第5問)。
問題文がやや抽象的でわかりにくいかもしれないので、簡単な例で実験してみます。
2進法、3進法、4進法で桁数が同じになるものについて考えます。
      1桁    2桁
 2進法 1    2〜3
 3進法 1〜2  3〜8
 4進法 1〜3  4〜15
2桁の2進数の最大の数(3)が2桁の4進数の最小の数を下回っているから、2桁以上で条件を満たすものはなく、1桁の1のみ条件を満たすことがわかりますね。
さて、問題を解いてみましょう。
条件を満たす最大の整数(△とします)がn桁であると考えます。
 10〇-1≦△<10 ←わかりにくければ具体例を考えてみるとよいでそう。例えば、10進法の3桁の数は100、101、・・・、999で100(102)以上1000(103)未満になります。他の進法についても同様ですね。
 9〇-1≦△<9
 8〇-1≦△<8
の3つの条件を満たす、つまり、
 10〇-1≦△<8
を満たす最大の整数△を求めることになります。
〇=1  1、8
〇=2  10、8×8=64
〇=3  100、64×8=512
〇=4  1000、512×8=4096
〇=5  10000、4000×8=32000より大 ←面倒な計算を避けるため、4096の下2桁をカットしました。これで2の累乗の計算が再び利用できるようになりますね。
〇=6  100000、32000×8=256000より大
〇=7  1000000、256000×8=2048000より大 ←面倒な計算を避けるため、48をカットして00にしました。これで2の累乗の計算が再び利用できるようになりますね。
〇=8  10000000、2000000×8=16000000より大
〇=9  100000000、16000000×8=128000000より大
〇=10 1000000000、128000000×8=1024000000より大
〇=11 10000000000、1024000000×8=8192000000より大
〇=10までは△があるということが確認できましたね。
〇=11以上のとき、△がなさそうなので、厳密に計算して確認します。
11=233=1024×1024×1024×8=1073741824×8<1100000000×8<8800000000となり、11桁の整数より小さくなるので、〇=11のとき、△はありません。
また、〇が1増えると、10〇-1は10倍され、8は8倍されるので、〇が11以上のときに△がないことは明らかですね。
したがって、条件を満たす最大の整数は1073741824−1=1073741823となります。



中学受験・算数の森TOPページへ