반전수

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

a_1a\_1개의 11, a_2a\_2개의 2, \dots, a_na\_n개의 nn으로 이루어진 수열들을 생각하자. 해당 수들로 이루어진 수열 중에 한 개를 균일한 확률로 무작위로 고를 때 반전수의 제곱의 기댓값을 998,244,353998\\, 244\\, 353으로 나눈 나머지를 구하여라.

수열 p_1p\_1, p_2p\_2, \dots, p_np\_n의 반전수는 i\<ji\<j, p_i>p_jp\_i>p\_j를 만족하는 순서쌍 (i,j)(i,j)의 개수로 정의한다.

입력

첫 번째 줄에 수열에 있는 수의 최댓값 nn이 주어진다. (2n200,0002\leq n\leq 200\\, 000)

두 번째 줄에 각 수의 개수 a_ia\_i가 공백을 사이에 두고 주어진다. (1a_i1\leq a\_i; n_i=1na_i998,244,352n\leq\sum\_{i=1}^{n}a\_i\leq 998\\, 244\\, 352).

출력

문제에서 요구하는 정답을 998,244,353998\\, 244\\, 353으로 나눈 나머지를 출력하여라.

힌트

반전수의 제곱의 기댓값이 유리수임을 증명할 수 있다. 이 수를 pq\frac{p}{q} (pp, qq는 서로소)로 표시했을 때, qq998,244,353998\\, 244\\, 353의 배수가 될 수 없음을 증명할 수 있다. aqp (mod 998,244,353)aq\equiv p\ (\mathrm{mod}\ 998\\, 244\\, 353)을 만족하는 음이 아닌 정수 aa 중 가장 작은 수를 pq\frac{p}{q}998,244,353998\\, 244\\, 353으로 나눈 나머지로 정의한다.

1111개, 2211개로 이루어진 수열은 1212, 2121 두 가지가 있고 각 수열의 반전수는 00, 11이다. 즉, 반전수의 제곱의 기댓값은 12\frac{1}{2}가 되고 499,122,177×21 (mod 998,244,353)499\\, 122\\, 177\times 2\equiv 1\ (\mathrm{mod}\ 998\\, 244\\, 353)이기 때문에 499,122,177499\\, 122\\, 177이 정답이 된다.