만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

반전수

시간 제한2초메모리 제한1024 MB

요약
값 i가 각각 a_i개씩 있을 때, 무작위로 고른 수열의 역전 수를 제곱한 값의 기댓값을 998244353으로 나눈 나머지로 구합니다.
난이도

어려움10점 중 8점

유형
확률, 조합론, 수학
정답자
아직 제출이 없습니다

문제

a1a_1개의 11, a2a_2개의 22, …\dots, ana_n개의 nn으로 이루어진 수열들을 생각하자. 이 수들로 이루어진 수열 중 하나를 균일한 확률로 무작위로 고를 때, 반전수의 제곱의 기댓값을 998 244 353998\,244\,353으로 나눈 나머지를 구하여라.

수열 p1,p2,…,pnp_1, p_2, \dots, p_n의 반전수는 i<ji<j이고 pi>pjp_i>p_j를 만족하는 순서쌍 (i,j)(i,j)의 개수로 정의한다.

입력

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

두 번째 줄에 각 수의 개수 aia_i가 공백을 사이에 두고 주어진다. (1≤ai1 \leq a_i; n≤∑i=1nai≤998 244 352n \leq \sum_{i=1}^{n} a_i \leq 998\,244\,352)

출력

정답을 998 244 353998\,244\,353으로 나눈 나머지를 출력하여라.

힌트

반전수의 제곱의 기댓값은 유리수이다. 이 수를 서로소인 정수 pp, qq로 pq\frac{p}{q}라 할 때, qq는 998 244 353998\,244\,353의 배수가 될 수 없음을 증명할 수 있다. 정답은 aq≡p(mod998 244 353)aq \equiv p \pmod{998\,244\,353}을 만족하는 음이 아닌 정수 aa 중 가장 작은 수이다.

11이 1개, 22가 1개인 수열은 1212와 2121 두 가지가 있고, 반전수는 각각 00, 11이다. 따라서 반전수의 제곱의 기댓값은 12\frac{1}{2}이고, 499 122 177×2≡1(mod998 244 353)499\,122\,177\times 2\equiv 1 \pmod{998\,244\,353}이므로 정답은 499 122 177499\,122\,177이다.

예제2

  1. 예제 1

    입력
    2
    1 1
    
    예상 출력
    499122177
    
  2. 예제 2

    입력
    5
    3 1 4 1 1
    
    예상 출력
    166374411