#arc154e. [arc154_e]Reverse and Inversion

[arc154_e]Reverse and Inversion

题目描述

对于一个排列 Q=(Q1,Q2,dots,QN)Q=(Q_1,Q_2,\\dots,Q_N),其中 QQ(1,2,dots,N)(1,2,\\dots,N) 的排列,定义 f(Q)f(Q) 如下:

对于所有满足 1lei<jleN1 \\le i < j \\le NQi>QjQ_i > Q_j 的整数对 (i,j)(i,j),求 jij-i 的和。

给定一个排列 P=(P1,P2,dots,PN)P=(P_1,P_2,\\dots,P_N),其中 PP(1,2,dots,N)(1,2,\\dots,N) 的排列。

重复以下操作 MM 次:

  • 选择一个整数对 (i,j)(i,j),使得 1leilejleN1 \\le i \\le j \\le N。交换 Pi,Pi+1,dots,PjP_i,P_{i+1},\\dots,P_j 的值,即将 Pi,Pi+1,dots,PjP_i,P_{i+1},\\dots,P_j 替换为 Pj,Pj1,dots,PiP_j,P_{j-1},\\dots,P_i

共有 left(fracN(N+1)2right)M\\left(\\frac{N(N+1)}{2}\\right)^{M} 种重复操作的方式。假设我们已经计算了所有这些方式下的 f(P)f(P)

求这 left(fracN(N+1)2right)M\\left(\\frac{N(N+1)}{2}\\right)^{M} 个值的和,对 998244353998244353 取模。

约束条件

  • 1leN,Mle2times1051 \\le N,M \\le 2 \\times 10^5
  • (P1,P2,dots,PN)(P_1,P_2,\\dots,P_N)(1,2,dots,N)(1,2,\\dots,N) 的排列。

输入格式

输入以以下格式从标准输入中给出:

NN MM P1P_1 P2P_2 dots\\dots PNP_N

输出格式

打印一行,包含答案。

样例输入 1

2 1
1 2

样例输出 1

1

可以进行以下三种操作:

  • 选择 (i,j)=(1,1)(i,j)=(1,1),得到 P=(1,2)P=(1,2),其中 f(P)=0f(P)=0
  • 选择 (i,j)=(1,2)(i,j)=(1,2),得到 P=(2,1)P=(2,1),其中 f(P)=1f(P)=1
  • 选择 (i,j)=(2,2)(i,j)=(2,2),得到 P=(1,2)P=(1,2),其中 f(P)=0f(P)=0

因此,答案是 0+1+0=10+1+0=1

样例输入 2

3 2
3 2 1

样例输出 2

90

样例输入 3

10 2023
5 8 1 9 3 10 4 7 2 6

样例输出 3

543960046