atcoder#ABC272H. [ABC272Ex] Flipping Coins 2

[ABC272Ex] Flipping Coins 2

Score : 600600 points

Problem Statement

NN coins numbered 0,1,,N10,1,\ldots,N-1 are arranged in a row. Initially, all coins are face up. Also, you are given a sequence AA of length NN consisting of integers between 00 and N1N-1.

Snuke will choose a permutation p=(p1,p2,,pN)p=(p_1,p_2,\ldots,p_N) of (1,,N)(1,\ldots,N) at equal probability and perform NN operations. In the ii-th (1iN)(1\leq i \leq N) operation,

  • he flips (Api+1)(A_{p_i}+1) coins: coin (i1)modN(i-1) \bmod N, coin (i1+1)modN(i-1+1 ) \bmod N, \ldots, and coin (i1+Api)modN(i -1+ A_{p_i}) \bmod N.

After the NN operations, Snuke receives kk yen (the currency in Japan) from his mother, where kk is the number of face-up coins.

Find the expected value, modulo 998244353998244353, of the money Snuke will receive.

Definition of expected value modulo $998244353$

In this problem, we can prove that the sought expected value is always a rational number. Moreover, under the Constraints of this problem, when the sought expected value is represented as an irreducible fraction yx\frac{y}{x}, it is guaranteed that xx is indivisible by 998244353998244353.

Then, an integer zz between 00 and 998244352998244352 such that xzy(mod998244353)xz \equiv y \pmod{998244353} is uniquely determined. Find such zz.

Constraints

  • 1N2×1051 \leq N\leq 2\times 10^5
  • 0AiN10\leq A_i \leq N-1
  • All values in the input are integers.

Input

The input is given from Standard Input in the following format:

NN

A1A_1 A2A_2 \ldots ANA_N

Output

Print the answer.

2
0 1
1

pp can be either (1,2)(1,2) or (2,1)(2,1).

  • If (1,2)(1,2) is chosen as pp:

In the first operation, coin 00 is flipped, and in the second operation, coin 11 and coin 00 are flipped. One coin, coin 00, results in being face up, so he receives 11 yen.

  • If (2,1)(2,1) is chosen as pp:

In the first operation, coin 00 and coin 11 are flipped, and in the second operation, coin 11 is flipped. One coin, coin 11, results in being face up, so he receives 11 yen.

Therefore, the expected value of the money he receives is 11 yen.

4
3 1 1 2
665496237

Print the expected value modulo 998244353998244353.