AT_kupc2024_p Pizza Destruction

题目描述

有 $1$ 块圆形披萨,在其圆周上有 $N$ 个点 $P_1, P_2, \cdots, P_N$,这些点将圆周恰好等分为 $N$ 等份。 最开始,披萨没有被切割。按照如下规则,将披萨切割 $M$ 次。 - 第 $i$ 次切割($1 \le i \le M$)时,从实数的均匀分布中随机选择 $\theta$,满足 $0 < \theta < \pi$。以点 $P_{A_i}$ 为圆心,将通过披萨圆周上 $P_{A_i}$ 的切线逆时针旋转 $\theta$,得到一条直线,沿该直线切割披萨。 请计算所有切割结束后,披萨被分成的块数的期望值,并对 $998244353$ 取模。 期望值取模 $998244353$ 的定义:本题中要求的期望值一定是有理数。在本题的数据范围内,将期望记为最简分数 $\frac{x}{y}$,保证 $x$ 不会被 $998244353$ 整除。此时,只有一个 $0$ 到 $998244352$ 之间的整数 $z$ 满足 $xz \equiv y \pmod{998244353}$。请输出这个 $z$ 作为答案。

输入格式

输入通过标准输入给出,格式如下: > $N$ $M$ $A_1$ $A_2$ $\cdots$ $A_M$

输出格式

输出答案。

说明/提示

### 样例解释 1 披萨有 $\frac{3}{4}$ 的概率会被分成 $3$ 块,有 $\frac{1}{4}$ 的概率会被分成 $4$ 块,因此期望值为 $\frac{13}{4}$。 ### 样例解释 2 数组 $A$ 可能包含相同的整数。 ### 约束条件 - 所有输入均为整数。 - $1 \le N \le 998244352$ - $1 \le M \le 3 \times 10^5$ - $1 \le A_i \le N$ 由 ChatGPT 5 翻译