首先忽略 i < j < k这个条件。
那么我们构造多项式
[A(x) = sum_{1<=i<=N} x^{A_i}
]
显然答案就是 $ A^3(x) $中 $ x^S $的系数。
现在我们考虑容斥:
- $ (sum_{}x)^3 = sum_{}x^3 + 3sum_{}x^2 y + 6sum_{}xyz $
- $ (sum_{}x^2)(sum_{}x) = sum_{}x^3 + sum_{}x^2 y $
- $ (sum_{}x)^3 = sum_{}x^3 (
<br>
<br>
由上面三个式子 我们可以推导出<br><br>
) sum_{}xyz = frac {(sum_{}x)^3 - 3(sum_{}x^2)(sum_{}x) + 2sum_{}x^3}{6} $
1式中的系数3, 是因为相当于从3个(x+y+z)中选2个x和一个y, 那么就是$ C_3^2 cdotp C_1^1 $
6 就是选一个x一个y一个z, 显然是 $ C_3^1 cdotp C_2^1 $
然后问题就解决了, 套fft模板就好。
第一次用markdown还有点小激动。
```C++
#include
#include
#include
#include
#include
#include
#include