結果

問題 No.144 エラトステネスのざる
コンテスト
ユーザー code-devo
提出日時 2016-01-19 17:37:19
言語 Ruby
(4.0.2)
コンパイル:
ruby -w -c _filename_
実行:
ruby _filename_
結果
AC  
実行時間 656 ms / 2,000 ms
コード長 383 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 48 ms
コンパイル使用メモリ 8,960 KB
実行使用メモリ 22,784 KB
最終ジャッジ日時 2026-04-09 15:01:39
合計ジャッジ時間 6,186 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 17
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #
raw source code

# 自分のローカル(Celeron 2.7GHz)だと、
# 今までの提出物全部2秒以内で実行終わるんだけどなあ・・・

SS = gets.split
N = SS[0].to_i
P = 1 - SS[1].to_f

sum = 0
A = Array.new(N + 1, 0)
V = {}
(2..N).each do |n|
  m = n * 2
  while m <= N do
    A[m] += 1
    m += n
  end
  v = V[A[n]]
  v = V[A[n]] = P ** A[n] unless v
  sum += v
end

puts sum
0