AT_abc396_f [ABC396F] Rotated Inversions

题目描述

给定整数 $N, M$ 和一个长度为 $N$ 的非负整数序列 $A=(A_1, A_2, \ldots, A_N)$。 对于每个 $k=0,1,\ldots,M-1$,请解决以下问题: > 定义整数序列 $B=(B_1, B_2, \ldots, B_N)$,其中 $B_i = (A_i + k) \bmod M$。求序列 $B$ 的逆序对数。 关于逆序对数的定义: 序列 $(A_1, A_2, \ldots, A_N)$ 的逆序对数是指满足 $1 \leq i < j \leq N$ 且 $A_i > A_j$ 的整数对 $(i, j)$ 的个数。

输入格式

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

输出格式

输出共 $M$ 行。 第 $i$ 行($1 \leq i \leq M$)应输出 $k = i - 1$ 时的答案。

说明/提示

### 约束条件 - $1 \leq N, M \leq 2 \times 10^5$ - $0 \leq A_i < M$ - 输入中的所有值均为整数 ### 样例解释 1 - 当 $k=0$ 时:$B=(2, 1, 0)$,逆序对数为 $3$(所有 $(i,j)$ 对均满足条件)。 - 当 $k=1$ 时:$B=(0, 2, 1)$,逆序对数为 $1$(仅 $(2,3)$ 满足)。 - 当 $k=2$ 时:$B=(1, 0, 2)$,逆序对数为 $1$(仅 $(1,2)$ 满足)。 翻译由 DeepSeek R1 完成