Problem 32 (Project Euler) [原文]
7254は面白い性質を持っている. 39 × 186 = 7254と書け, 掛けられる数/掛ける数/積に1から9の数が1回ずつ出現する.
掛けられる数/掛ける数/積に1から9の数が1回ずつ出現するような積の総和を求めよ.
HINT: いくつかの積は, 1通り以上の掛けられる数/掛ける数/積の組み合わせを持つが1回だけ数え上げよ
常識的に考えて、題意を満たすように掛け算に表れる数字がちょうど9個となる各数の桁の組み合わせは以下の2通りとなります。
これが分かれば、二重ループを回すことになるのですが、掛けられる数、掛ける数のいずれにも重複する数字は含まれないことや掛け算の答えの桁数などを考慮することにより、ループ範囲は若干狭まります。
答えの組み合わせは虫食い算の問題になんかにも使えますね。