アルゴリズム体操その5

プログラミングの宝箱 アルゴリズムとデータ構造 (C magazine)

プログラミングの宝箱 アルゴリズムとデータ構造 (C magazine)

再帰完了。


ところで、ここで例題として出てくる”開き直り”数の解法の考え方が、面白かった。
この”開き直り”数とは、各桁のべき乗の和が、元の数と等しくなる数のことである。
3435 = 3^3 + 4^4 + 3^3 + 5^5
素直なやり方では、整数のべき乗を一度計算して保存しておき、1から順番に各桁の数を求めて、そのべき乗の和を求めていけばよい。
しかしこの本では、別の方法を用いている。
試しに両方実装したが、この本で紹介されている方法は、格段に早かった。