1 条题解

  • 0
    @ 2026-9-9 9:23:58

    题解

    思路

    只要当前玩家还有至少两张牌,就不可能所有选择都会立刻失败:若两张不同牌加到当前总和后都为 MM 的倍数,它们之差也会被 MM 整除,但牌面都在 11 到 N<MN<M 内,这是不可能的。

    做法

    因此决定胜负的是 Alice 打出自己最后一张牌的时刻。若 Bob 最后保留的牌是 xx,此时场上总和为两副牌的总和减去 xx,即 N(N+1)−xN(N+1)-x;Bob 能获胜当且仅当存在 1≤x≤N1\le x\le N 使它被 MM 整除。

    令 R=N(N+1) mod MR=N(N+1)\bmod M。由于 0≤R<M0\le R<M 且 N<MN<M,上述 xx 若存在只能等于 RR,所以当且仅当 1≤R≤N1\le R\le N 时输出 Bob,否则输出 Alice。

    复杂度

    每组询问时间复杂度为 O(1)O(1),额外空间复杂度为 O(1)O(1);乘法使用 64 位整数即可安全容纳。

    • 1

    信息

    ID
    1682
    时间
    2000ms
    内存
    1024MiB
    难度
    10
    标签
    递交数
    1
    已通过
    1
    上传者