Problem30
/* * \file problem030.cpp * \brief Project Euler - Problem30 * * \author Takushi Homma (b1006018@fun.ac.jp) * \date 2010/03/07 16:13:33 */ #define FIG 5 int pow5(int n) { return n*n*n*n*n; } #include <iostream> using namespace std; int main(int argc, char **argv) { int ans = 0; for (int n = pow5(9)*FIG; n > 1; n--) // デクリメント { int sum = 0; for (int m = n; m > 0; m/= 10) { sum += pow5(m%10); } if (sum == n) { ans += n; } } cout << ans << endl; return 0; }