题目描述
長さ N の数列 A = (A1, ..., AN) および整数 K が与えられます。
A の要素を並べ替えて得られる数列のうち、隣接する要素の和が K より小さい箇所が存在しない数列は何通りありますか?個数を 998244353 で割ったあまりを求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
N K A1 A2 … AN
输出格式
答えを出力せよ。
题目大意
题目描述
给定长度为 n 的数列 {ai} 和一个自然数 K, 可以将 {ai} 打乱顺序重排,问多少种结果序列满足 ∀i∈[1,n),ai′+ai+1′≥K。 答案对 998244353 取模。
输入格式
n K
a1 a2 ... an
输出格式
一个整数,答案对 998244353 取模的结果。
样例解释1
共 4 个:$ (1,\ 4,\ 2,\ 3) - (1,\ 4,\ 3,\ 2)- (2,\ 3,\ 4,\ 1) - (3,\ 2,\ 4,\ 1)$
数据范围
2≤n≤2×105
0≤ai,K≤109
4 5
1 2 3 4
4
4 3
1 2 3 3
12
10 7
3 1 4 1 5 9 2 6 5 3
108
提示
制約
- 2 ≤ N ≤ 2 × 105
- 0 ≤ K ≤ 109
- 0 ≤ Ai ≤ 109
- 入力される値はすべて整数
Sample Explanation 1
条件を満たす数列は次の 4 通りです。 - (1, 4, 2, 3) - (1, 4, 3, 2) - (2, 3, 4, 1) - (3, 2, 4, 1)
Sample Explanation 2
A の要素を並べ替えてできる数列としてあり得るのは全部で 12 通りあり、その全てが条件を満たします。