結果

問題 No.1083 余りの余り
コンテスト
ユーザー tttmmmyyyy
提出日時 2026-10-27 20:56:54
言語 Fix
(1.6.0 + cp-library + minilib)
コンパイル:
fix_c _filename_
実行:
./a.out
結果
WA  
実行時間 -
コード長 559 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 17,717 ms
コンパイル使用メモリ 670,708 KB
実行使用メモリ 9,868 KB
最終ジャッジ日時 2026-10-27 20:57:16
合計ジャッジ時間 17,955 ms
ジャッジサーバーID
(参考情報)
judge5_0 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 26 WA * 4
権限があれば一括ダウンロードができます
コンパイルメッセージ
make: 'lib.o' は更新済みです.

ソースコード

diff #
raw source code

module Main;

import CPLib.IO;
import CPLib.Bits;

main : IO () = (
    let n = *read_i;
    let k = *read_i;
    let as = *read_is(n);

    let dp = fill(1.shift_left(n), -1);
    let dp = dp[0].iset(k);
    let dp = range(0, 1.shift_left(n) - 1).fold(dp, |flag, dp|
        range(0, n).fold(dp, |i, dp|
            if flag.bit_check(i) { dp };
            let a = as.@(i);
            let x = dp.@(flag);
            let dp = dp[flag.bit_set(i)].imod(max(x % a));
            dp
        )
    );
    dp.@(1.shift_left(n)-1).to_string.println;;
    pure()
);
0