結果
| 問題 | No.6 使いものにならないハッシュ | 
| コンテスト | |
| ユーザー | 👑 | 
| 提出日時 | 2020-04-11 23:44:42 | 
| 言語 | Lua (LuaJit 2.1.1734355927) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 8 ms / 5,000 ms | 
| コード長 | 810 bytes | 
| コンパイル時間 | 231 ms | 
| コンパイル使用メモリ | 6,692 KB | 
| 実行使用メモリ | 5,376 KB | 
| 最終ジャッジ日時 | 2024-09-16 16:55:35 | 
| 合計ジャッジ時間 | 1,233 ms | 
| ジャッジサーバーID (参考情報) | judge6 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 32 | 
ソースコード
local mfl, mce = math.floor, math.ceil
local function getprimes(k, x)
  local primes = {}
  local allnums = {}
  for i = 1, x do allnums[i] = true end
  for i = 2, x do
    if allnums[i] then
      if k <= i then
        table.insert(primes, i)
      end
      local lim = mfl(x / i)
      for j = 2, lim do
        allnums[j * i] = false
      end
    end
  end
  return primes
end
local k, n = io.read("*n", "*n")
local primes = getprimes(k, n)
local t = {}
for i = 1, 8 do
  t[i] = 0
end
local maxlen, maxlenpos = 0, 0
local right = #primes
for i = #primes, 1, -1 do
  local p = primes[i]
  local dv = p % 9
  if t[dv] ~= 0 then
    right = math.min(right, t[dv] - 1)
  end
  t[dv] = i
  local len = right - i + 1
  if maxlen < len then
    maxlen = len
    maxlenpos = i
  end
end
print(primes[maxlenpos])
            
            
            
        