PEをMathematicaで

Project Eulerに挑戦してみよう

Project Euler 41 / 最小の倍数

n桁パンデジタルであるとは,1からnまでの数を各桁に1つずつ持つこととする。たとえば2143は4桁パンデジタル数であり,かつ素数である。

n桁パンデジタルな素数の中で最大の数を答えよ(n≦9)。

Problem 41 - Project Euler


この定義では3桁の数に使える数字は1, 2, 3だけ。和の6は3の倍数なので,3桁パンデジタルな素数はありません。同じ理由で,4桁と7桁について調べればいいことがわかります。

  • 1+2+3=6
  • 1+2+3+4=10
  • 1+2+3+4+5=15
  • 1+2+3+4+5+6=21
  • 1+2+3+4+5+6+7=28
  • 1+2+3+4+5+6+7+8=36
  • 1+2+3+4+5+6+7+8+9=45

最大の数を求めたいので,7654321から2ずつ引いていった数について素数かどうか,パンデジタルかどうかを調べました。