1. 程式人生 > >[bzoj4555][Tjoi2016&Heoi2016]求和【stirling數】【FFT~NTT】

[bzoj4555][Tjoi2016&Heoi2016]求和【stirling數】【FFT~NTT】

【題目連結】
  https://www.lydsy.com/JudgeOnline/problem.php?id=4555
【題解】
  考慮第二類斯特林數的公式:
  xn=i=0x(ix)i!Sn,i
  就是先列舉選了幾個格子,再乘以順序。
  對這個式子做二項式反演,得:
  Sn,x=1x!i=0x(1)xi(ix)in
  用此方法來化簡問題中的式子:
  i=0nj=0iSi,j2jj!
  

=i=0nj=0i2jk=0j(1)jk(kj)ki
  由於當i<jSi,j=0所以j的列舉上界改為n
  同時展開組合數:
  =i=0nj=0n2jj!k=0j(1)jk1k!(jk)!ki
  改變求和順序:
  =j=0n2jj!k=0j(1)jk(jk)!i=0nkik!