結果
| 問題 | No.144 エラトステネスのざる |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-01-19 17:37:19 |
| 言語 | Ruby (3.4.1) |
| 結果 |
AC
|
| 実行時間 | 1,551 ms / 2,000 ms |
| コード長 | 383 bytes |
| 記録 | |
| コンパイル時間 | 182 ms |
| コンパイル使用メモリ | 7,552 KB |
| 実行使用メモリ | 20,352 KB |
| 最終ジャッジ日時 | 2024-09-21 08:04:41 |
| 合計ジャッジ時間 | 12,914 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 17 |
コンパイルメッセージ
Syntax OK
ソースコード
# 自分のローカル(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