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 }