結果
問題 |
No.144 エラトステネスのざる
|
ユーザー |
![]() |
提出日時 | 2015-06-13 01:39:16 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 82 ms / 2,000 ms |
コード長 | 426 bytes |
コンパイル時間 | 10,227 ms |
コンパイル使用メモリ | 221,416 KB |
実行使用メモリ | 11,868 KB |
最終ジャッジ日時 | 2024-10-10 19:04:53 |
合計ジャッジ時間 | 11,626 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 17 |
ソースコード
package main import ( "fmt" "math" ) func main() { var N int var p float64 fmt.Scan(&N, &p) d := divisorCounter(N) var ans float64 for i := 2; i < N+1; i++ { if d[i] == 0 { ans += 1 } else { ans += math.Pow(1-p, float64(d[i])) } } fmt.Println(ans) } func divisorCounter(n int) []int { d := make([]int, n+1) for i := 2; i < n+1; i++ { for j := i * 2; j < n+1; j += i { d[j]++ } } return d }