1.答案=初始乘积-最终乘积的期望。然后直接dp+ntt是O(nklogk)
2.考虑展开式子ans=sum(a[i]-b[i]),大概感受一下未知数个数相同的项系数相同,问题在于如何求系数
3.没思路。题解的做法是把状态用子集表示,这样就很好转移。
F(s,i)表示s集合在i次操作后乘积的期望。
F(s,i)=F(s,i-1)-sigma(F(s-2^j,i-1)/n, j belong to s) //其实这并没有用到1中提到的性质,转移也很显然。
边界是F(s,0)=sum(ai, i belong to s),要求F(2^n-1,k)。
把式子递归地展开两三层,再考虑直接求每个F(s,0)对答案的贡献(系数),是A(k,n-|s|)/(n^(n-|s|)),而这也正是前面所说的只有n种的系数。//大概可以这样理解,k步里选n-|s|步放1..n-|s|中的数,由于有顺序关系,因此是A()。
总结:
1.适当地展开式子
2.可能有些期望题可以从状压dp入手