AT_ttpc2023_g.Cola

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Alice 喜欢一个长度为 NN 的排列 P=(P1,P2,…,PN)P=(P_1, P_2, \dots, P_N),其中 PP 是 1,2,…,N1,2,\dots,N 的一个排列。Bob 知道如果能猜中 Alice 喜欢的排列 PP,就能从 Alice 那里得到一瓶可乐。为此,Bob 决定通过向 Alice 提问的方式来猜测 PP。

Bob 最多可以进行 MM 次如下的提问:

  • 选择一个 1,2,…,N1,2,\dots,N 的排列 Q=(Q1,Q2,…,QN)Q=(Q_1, Q_2, \dots, Q_N),询问 Alice 她喜欢的排列是不是 QQ。

其中 M≤NM \leq N。

Alice 对于 Bob 的每一次提问,会做出以下反应:

  • 若 P=QP=Q,Alice 就会把可乐给 Bob。
  • 若 P≠QP \neq Q,Alice 会告诉 Bob 所有满足 Pi≠QiP_i \neq Q_i 的 ii 中最小的一个 ii。

例如,P=(4,3,2,1)P=(4,3,2,1),Bob 若用 Q=(4,3,1,2)Q=(4,3,1,2) 提问,Alice 会告诉 Bob:“存在 Pi≠QiP_i \neq Q_i 的 ii,其中最小的是 i=3i=3”。

请注意,即使在第 MM 次提问后确定了 PP,Bob 也无法获得可乐。

一开始,Bob 对 PP 没有任何信息。请计算当 Bob 最大化自己获得可乐的概率时,这个最大概率是多少。答案需对 998244353998244353 取模输出。

概率的 998244353998244353 取模的定义
本题中的概率总能表示为一个有理数。并且,在本题条件下,用最简分数 yx\frac{y}{x} 表示答案时,xx 保证不被 998244353998244353 整除。这时,存在唯一的整数 zz 满足 0≤z<9982443530\leq z<998244353,使得 y≡xz(mod998244353)y \equiv xz \pmod{998244353}。请输出 zz。

输入格式

输入从标准输入中读入,格式如下:

N MN\ M

输出格式

输出答案。

输入输出样例

  • 输入#1

    2 1

    输出#1

    499122177
  • 输入#2

    1 1

    输出#2

    1
  • 输入#3

    167 91

    输出#3

    469117530

说明/提示

部分分

  • 对于满足额外约束 M≤105M \leq 10^{5} 的数据集,若答对则可获得 7070 分。

样例解释 1

对于只进行 11 次提问,可能的 PP 有 22 个,因此有 12\frac{1}{2} 的概率能获得可乐。

注意,即使第 11 次没猜中,确定了 PP 也不能得到可乐。

样例解释 2

第一次提问必然能获得可乐。

数据范围

  • 1≤M≤N≤1071 \leq M \leq N \leq 10^{7}
  • 所有输入均为整数。

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页