require 'prime' FM = 1 TO = 5_000_000 gets a = gets.split.map(&:to_s) k = 1 cs = a.dup max_len = -1 Prime.each(TO) do |pn| chars = pn.to_s.chars if (chars - a).size == 0 then #与えられた数字のみが使われている cs -= chars else #与えられた数字以外が使われている if cs.size <= 0 then len = pn - 1 - k #現在の範囲の上限は、素数-1 max_len = len if len > max_len end k = pn + 1 #次の範囲の下限は、素数+1 cs = a.dup end end if cs.size <= 0 then len = TO - k max_len = len if len > max_len end puts max_len