Problem 49

#! /usr/bin/env ruby
# coding: utf-8
require 'prime'
require 'bsearch'
primes = [] #4桁の素数リスト
Prime.each{|prime|
  if prime > 10000 
    break
  elsif prime > 1000
    primes.push(prime)
  end
}
primes.combination(2){|p1,p2|
  p3 = 2*p2 - p1 #p1,p2,p3は等差数列
  next unless primes.bsearch {|x| x <=> p3} #p3が4桁の素数か判定
  p1a = p1.to_s.each_char.to_a.sort! 
  p2a = p2.to_s.each_char.to_a.sort!
  p3a = p3.to_s.each_char.to_a.sort!
  if p1a == p2a and p2a == p3a
    printf("%d %d %d\n",p1,p2,p3)
  end
}