結果

問題 No.12 限定された素数
ユーザー letrangerjpletrangerjp
提出日時 2017-05-15 01:01:34
言語 Ruby
(3.3.0)
結果
AC  
実行時間 2,673 ms / 5,000 ms
コード長 455 bytes
コンパイル時間 104 ms
コンパイル使用メモリ 7,552 KB
実行使用メモリ 28,012 KB
最終ジャッジ日時 2024-05-03 10:45:22
合計ジャッジ時間 57,175 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 2,046 ms
27,652 KB
testcase_01 AC 2,122 ms
27,852 KB
testcase_02 AC 2,058 ms
27,752 KB
testcase_03 AC 102 ms
12,160 KB
testcase_04 AC 2,025 ms
27,796 KB
testcase_05 AC 2,196 ms
27,848 KB
testcase_06 AC 2,276 ms
27,852 KB
testcase_07 AC 2,371 ms
27,728 KB
testcase_08 AC 2,121 ms
27,884 KB
testcase_09 AC 2,068 ms
27,856 KB
testcase_10 AC 2,163 ms
27,860 KB
testcase_11 AC 2,673 ms
27,792 KB
testcase_12 AC 2,379 ms
27,796 KB
testcase_13 AC 2,210 ms
27,796 KB
testcase_14 AC 2,118 ms
27,876 KB
testcase_15 AC 2,201 ms
27,876 KB
testcase_16 AC 2,559 ms
27,036 KB
testcase_17 AC 1,968 ms
27,664 KB
testcase_18 AC 2,008 ms
27,852 KB
testcase_19 AC 1,998 ms
27,988 KB
testcase_20 AC 2,050 ms
27,808 KB
testcase_21 AC 2,186 ms
27,852 KB
testcase_22 AC 1,979 ms
28,012 KB
testcase_23 AC 2,005 ms
27,892 KB
testcase_24 AC 2,038 ms
27,740 KB
testcase_25 AC 2,153 ms
27,724 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

require "prime"

def f(a)
  max = -1
  start = 1
  last = Prime.each(PRIME_MAX).inject([]){|curr, pr|
    pr_a = pr.to_s.chars

    if !((curr | pr_a) - a).empty?
      max = [max, pr - start - 1].max if curr.size == a.size
      start = pr + 1
      []
    else
      curr | pr_a
    end
  }
  max = [max, PRIME_MAX - start].max if last.size == a.size
  max
end

PRIME_MAX = 5_000_000
N = gets.to_i
A = gets.split.take(N)

p N == 10 ? PRIME_MAX-1 : f(A)
0