結果
問題 | No.425 ジャンケンの必勝法 |
ユーザー | hermione17 |
提出日時 | 2016-09-22 22:57:54 |
言語 | Java (openjdk 23) |
結果 |
WA
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 722 bytes |
コンパイル時間 | 8,148 ms |
コンパイル使用メモリ | 83,944 KB |
実行使用メモリ | 54,252 KB |
最終ジャッジ日時 | 2024-11-17 19:27:51 |
合計ジャッジ時間 | 6,671 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 5 |
other | AC * 16 WA * 2 |
ソースコード
import java.io.PrintStream; import java.util.Scanner; public class Y425 { int p0; int q; Y425() throws Exception { Scanner in = new Scanner(System.in); PrintStream out = new PrintStream(System.out); p0 = in.nextInt(); q = in.nextInt(); double ans = 1.0 / 3; ans += dfs(p0, 1.0 / 3); out.println(ans); out.flush(); } double dfs(int p, double s) { if (s < 1e-9) return s / 2.0; double ans = 0; ans += p / 100.0 * 0.5 * s; ans += dfs(Math.max(0, p - q), p / 100.0 * s * 0.5); ans += (100 - p) / 100.0 / 3.0 * s; ans += dfs(Math.min(100, p + q), (100 - p) / 100.0 * s / 3.0); return ans; } public static void main(String argv[]) throws Exception { new Y425(); } }