結果
| 問題 | No.567 コンプリート |
| コンテスト | |
| ユーザー |
👑 |
| 提出日時 | 2026-10-30 21:27:42 |
| 言語 | Fix (1.6.0 + cp-library + minilib) |
| 結果 |
AC
不安定
|
| 実行時間 | 674 ms / 2,000 ms |
| + 565µs | |
| コード長 | 647 bytes |
| 記録 | |
| コンパイル時間 | 7,254 ms |
| コンパイル使用メモリ | 673,560 KB |
| 実行使用メモリ | 9,904 KB |
| 最終ジャッジ日時 | 2026-10-30 21:27:58 |
| 合計ジャッジ時間 | 10,601 ms |
|
ジャッジサーバーID (参考情報) |
judge1_0 / judge2_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 9 |
コンパイルメッセージ
make: 'lib.o' は更新済みです.
ソースコード
module Main;
import CPLib.Bits::bit_set;
import CPLib.IO;
main : IO () = (
let n = *read_i;
let c64 = 1.shift_left(6);
let dp = fill(2, fill(c64, 0.0));
let dp = dp[0][0].iset(1.0);
let dp = range(0, n).fold(dp, |n, dp|
let dp = dp[(n+1)%2].imod(|arr| range(0, c64).fold(arr, |i, arr| arr[i].iset(0.0)));
range(0, c64).fold(dp, |flag, dp|
let v = dp.@(n%2).@(flag);
range(0, 6).fold(dp, |dice, dp|
let flag = flag.bit_set(dice);
dp[(n+1)%2][flag].imod(add(v / 6.0))
)
)
);
dp.@(n%2).@(c64-1).to_string.println;;
pure()
);