4桁のカプレカー数 /「算数にチャレンジ!!」第1021問

問題概略

4 桁の自然数  x の各位の数字を並べかえた数の最大値を  M,最小値を  m とします。
 M-m=x をみたす  x を求めてください。

http://www.sansu.org/used-html/index1021.html

解説の pdf も作りました。きれいなレイアウトで読みたい方はこちらをどうぞ。

drive.google.com

第 1165 回にも出題されているカプレカー数の問題です。

ja.wikipedia.org

x は 9 の倍数

 x の各位の数字を  a,  b,  c,  d  (a\geqq b\geqq c\geqq d) とします。

\begin{align*}
&M=1000a+100b+10c+d,\, m=1000d+100c+10b+a\\
&\therefore x=M-m=999(a-d)+90(b-c)
\end{align*}

 x は 9 の倍数です。

mathematicaで解く

手計算で解くのは大変なので,まずは mathematica で答えを出しました。
IntegerDigits で  x の桁数字のリストを作って Sort で並べかえたものを連結すると  M m が作れます。
条件をみたす  x は 6174だけでした。

In[]:= AbsoluteTiming[
 f[n_] := Module[{a, b, lst},
   lst = Sort@IntegerDigits@n;
   a = FromDigits@Reverse@lst;
   b = FromDigits@lst;
   a - b == n];
 ans = First@Select[Range[1008, 9999, 9], f]]

Out[]= {0.0079527, 6174}

手計算で解く

 x=1000p+100q+10r+s とおきます。
 M-m=x M=m+x に変形して筆算で考えます。

f:id:variee:20211129200816p:plain

 a d の大小関係を考えると 1 の位と 10 の位では繰り上がりがおきることがすぐにわかります。

\begin{align*}
&a+s=d+10,\, b+r+1=c+10\\
&\therefore s=d-a+10,\, r=c-b+9
\end{align*}

100 の位は繰り上がりがおきるかどうか場合分けが必要です。

100 の位で繰り上がりがおきるとき

100 の位と 1000 の位に注目すると  c+q+1=b+10,  d+p+1=a を得ます。

\begin{align*}
&q=b-c+9,\, p=a-d-1\\
&\therefore (p,\, q,\, r,\, s)=(a-d-1,\,b-c+9,\, c-b+9,\, d-a+10)
\end{align*}

 q=b-c+9\geqq 0+9= 9 q\leqq 9 から  b=c q=9 がわかります。 a=9 もわかりますね。

 \therefore (p,\, q,\, r,\, s)=(8-d,\,9,\, 9,\, d+1)

 p s のなかに 9 が 2 つ含まれることと  a=9 \geqq b=c\geqq d から  a=b=c=9 がわかります。

 8-d d+1 の片方は  c=9 です。 8-d=9 はありえないので  d+1=9 より  d=8 です。

ただ,このとき次のようになって  x が 9 の倍数であることと矛盾します。この場合は不適です。

 x\equiv a+b+c+d=9+9+9+8\equiv 8\pmod{9}

100 の位で繰り上がりがおきないとき

 c+q+1=b,  d+p=a より

\begin{align*}
&q=b-c-1,\, p=a-d\\
&\therefore (p,\, q,\, r,\, s)=(a-d,\,b-c-1,\, c-b+9,\, d-a+10)
\end{align*}

この式から  p+s=10,  q+r=8 がわかるので  p,  q を決めれば  r,  s も決まります。

ただ, 1\leqq p\leqq 9,  0\leqq q\leqq 8 より  (p,\, q,\, r,\, s) の候補は全部で  9^2=81 通りあって,しらみつぶしするには多すぎます。
まずは桁数字の「組」ではなく「集合」を相手にしましょう。

\begin{align*}
\{p,\, s\} &=\{1, 9\}, \{2, 8\}, \{3, 7\}, \{4, 6\}, \{5, 5\}\\
\{q,\, r\} &=\{0, 8\}, \{1, 7\}, \{2, 6\}, \{3, 5\}, \{4, 4\}
\end{align*}

 \{p,\, q,\, r,\, s\}=\{a,\, b,\, c,\, d\} はこれらを組みあわせたもので  5^2=25 個あります。
 a d がわかりやすいようにソートしたものを書いておきます。

\begin{align*}
&\{0, 1, 8, 9\}, \{1, 1, 7, 9\}, \{1, 2, 6, 9\}, \{1, 3, 5, 9\}, \{1, 4, 4, 9\},\\
&\{0, 2, 8, 8\}, \{1, 2, 7, 8\}, \{2, 2, 6, 8\}, \{2, 3, 5, 8\}, \{2, 4, 4, 8\},\\
&\{0, 3, 7, 8\}, \{1, 3, 7, 7\}, \{2, 3, 6, 7\}, \{3, 3, 5, 7\}, \{3, 4, 4, 7\},\\
&\{0, 4, 6, 8\}, \{1, 4, 6, 7\}, \{2, 4, 6, 6\}, \{3, 4, 5, 6\}, \{4, 4, 4, 6\},\\
&\{0, 5, 5, 8\}, \{1, 5, 5, 7\}, \{2, 5, 5, 6\}, \{3, 5, 5, 5\}, \{4, 4, 5, 5\}
\end{align*}

これらをまともにチェックする前に「 p=a-d s=10-p \{a,\, b,\, c,\, d\} に含まれるか」で候補をしぼりこむと少し楽です。

たとえば  \{0,\,1,\,8,\, 9\} のとき  a=9,  d=0 p=a-d=9 s=10-p=1 \{a,\, b,\, c,\, d\} に含まれるのでこの簡易チェックをパスしますが, \{1, 1, 7, 9\} は否定されます。
この方法で  \{a,\, b,\, c,\, d\} は 4 パターンに絞られます。

 \{0, 1, 8, 9\},\, \{0, 2, 8, 8\},\, \{1, 4, 6, 7\},\, \{2, 4, 6, 6\}

ここから  M-m=x をみたす  x が作れるものを探すと  x=6174 を得ます。これが答えです。

f:id:variee:20211129200759p:plain


variee.hatenablog.com