let solve n p = let p2 = 1.0 -. p in let s = Array.init (n+1) (fun i -> 1.0) in let ans = ref 0.0 in for i = 2 to n do ans := !ans +. s.(i); let j = ref (i*2) in while !j <= n do s.(!j) <- s.(!j) *. p2; j := !j + i; done done; !ans let () = Scanf.scanf "%d %f" (fun n p -> let ans = solve n p in Printf.printf "%f\n" ans)