a_1개의 1, a_2개의 2, …, a_n개의 n으로 이루어진 수열들을 생각하자. 해당 수들로 이루어진 수열 중에 한 개를 균일한 확률로 무작위로 고를 때 반전수의 제곱의 기댓값을 998,244,353으로 나눈 나머지를 구하여라.
수열 p_1, p_2, …, p_n의 반전수는 i\<j, p_i>p_j를 만족하는 순서쌍 (i,j)의 개수로 정의한다.
첫 번째 줄에 수열에 있는 수의 최댓값 n이 주어진다. (2≤n≤200,000)
두 번째 줄에 각 수의 개수 a_i가 공백을 사이에 두고 주어진다. (1≤a_i; n≤∑_i=1na_i≤998,244,352).
문제에서 요구하는 정답을 998,244,353으로 나눈 나머지를 출력하여라.
반전수의 제곱의 기댓값이 유리수임을 증명할 수 있다. 이 수를 qp (p, q는 서로소)로 표시했을 때, q는 998,244,353의 배수가 될 수 없음을 증명할 수 있다. aq≡p (mod 998,244,353)을 만족하는 음이 아닌 정수 a 중 가장 작은 수를 qp를 998,244,353으로 나눈 나머지로 정의한다.
1이 1개, 2가 1개로 이루어진 수열은 12, 21 두 가지가 있고 각 수열의 반전수는 0, 1이다. 즉, 반전수의 제곱의 기댓값은 21가 되고 499,122,177×2≡1 (mod 998,244,353)이기 때문에 499,122,177이 정답이 된다.