朝日新聞2004年12月25日パズルパークその1解答

プログラムの実行結果は以下の通り。

Find 3^3 + 5^3 + 5^3 + 12^3 = 2005
cnt:7315

プログラムのソースは以下の通り。

#include "puzutl.h"

int main( int argc, cstring argv[])
{
  int cnt = 0;
  for( int a=1; a< 20; a++) {
    for( int b=a; b< 20; b++) {
      for( int c=b; c< 20; c++) {
        for( int d=c; d< 20; d++) {
          int s = a*a*a + b*b*b + c*c*c + d*d*d;
          if( s == 2005) ps( "Find %d^3 + %d^3 + %d^3 + %d^3 = 2005\n", a, b, c, d);
          cnt++;
        }
      }
    }
  }
  ps( "cnt:%d\n", cnt);
  return    0;
}