デジタル立方数問題
『数学の魔法の宝箱』にデジタル立方数という問題があった。
どういう問題かと言うと、こういう問題。
153という数は、各桁の3条の和に等しい。
13 + 53 + 33 = 1 + 125 + 27 = 153
同じ性質を持つ3桁の数が他に3つある。
p.37
総当たりで調べればいいんだけど、本の解答欄を見るとよくわからなくなった。
分からんところ1:余りが同一
解答欄では、求める数をabcとすると
a+b+cもa3+b3+c3も9で割った余りは同じ
と書いてある。
この部分が唐突で意味が分からない。
答えは確かに余りが同一になっているんだけど、いったいどこからそれが出てきたのかサッパリ。
分からんところ2:a+b+cの範囲
上の「余りが同一」という話から、すぐさま
a+b+cは7,8,9,10,11,16,17,18,19,20でなければならない
と続いている。
いやだから、どこからそれの数字が出てきたん?
私はよく分からないので誰か考えてみてください
ブログのネタにでも何でもどうぞ。
考え方をコソッと公開してもらえればコソッと見に行ってコソッと納得したいと思います。
ちなみに答えは
153(9で割ると余り0)
370(余り1)
371(余り2)
407(余り2)
でした。
確かに余りは同一なんだよなぁ……意味が分からんだけで。
コード(C#, 総当たり)
using System;
using System.Diagnostics;
class Program
{
static void Main()
{
for (int n = 2; n < 1000; n++)
{
var s = n.ToString();
var sum = 0;
var sum2 = 0;
var tens = (int)Math.Pow(10, s.Length - 1);
foreach (var c in s)
{
var num = c - '0';
sum += (tens * num);
sum2 += (num * num * num);
tens /= 10;
}
if (sum == sum2)
{
Debug.WriteLine(n);
}
}
}
}