LoginSignup
2
2

More than 5 years have passed since last update.

Project Euler Q37 【切り詰め可能素数】

Posted at

Project Eulerをワンライナーで解いてみる。
間違っていたらコメントください。

問題

$3797$は面白い性質を持っている. まずそれ自身が素数であり, 左から右に桁を除いたときに全て素数になっている $(3797, 797, 97, 7).$ 同様に右から左に桁を除いたときも全て素数である $(3797, 379, 37, 3).$

右から切り詰めても左から切り詰めても素数になるような素数は$11$個しかない. 総和を求めよ.

注: $2, 3, 5, 7$を切り詰め可能な素数とは考えない.

解答

seq 11 999999 |
grep -v "^[0|1|4|6|8|9]" |
grep -v "[0|1|2|4-6|8|9]$" |
awk '{for(i=1;i<=length;i++){printf substr($1,i,length+1-i)" "substr($1,1,length-i)" "};print "1"}' |
factor |
awk 'NF==1{print "@"} NF==2{print $2,"1"} 3<=NF{print $1*1,"0"}' |
tr '\n' ' ' |
tr '@' '\n' |
grep -v " 0" |
awk '{s+=$1}END{print s}'
748317

答え合わせ

こちらのサイト様と一致していればOKとした。
http://kingyojima.net/pje/037.html

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2