五一省选集训Day1

五一省选集训Day1

A

\(G^n\pmod {x^t}\)\(n\le 1e7 ,G=\sum_{i=0}^ka_ix^i,k\le 100,t*k\le 5e7\)

暴力lnexp有40

考虑\((G^{n+1})'\)

\[(G^{n+1})' = nG^nG' = (G^n)'G \]

首先\(G^n[x^0]=G[x^0]^n\)

\(对于G^n[x^i]\),考虑与\(G[x^j]\)相乘。设\(G^n=\sum_{i\ge 0}c_ix^i,G=\sum_{i\ge 0 }d_ix^i\)

\[\forall i\leq t+k , c_id_1+c_{i-1}d_2+...+kc_{i-k+1}d_k = (i+1)q_{i+1}c_0+ic_id_1+...+(i-k+1)c_{i-k+1}d_k \]

这样每求出一个数就可以把它的贡献加到最多k个等式中,总复杂度\(O(tk)\)

B

比赛时只考虑了一半(还想到预处理我错误的做法),最后对拍出错以为是std错了没管,结果爆零了。对拍要早点写,多思考程序哪里不对。

考虑到0和1是等价的,我们只考虑0的情况,最后乘以2。

考虑枚举结束的位置\(i\)\(i\ge n\)),因为会影响概率。有一个显然的条件是\(0\)不能在\(a_k\)前结束(1可以),并且每种情况的概率为\(\frac{1}{2^{i-1}}\),最后一个被钦定了。(注意此处边界情况)

然后考虑在每种情况下如何计算答案,显然是直接乘上方案数。考虑分配了k个0之后其他0或者1的分配情况,1填空。用组合数算一下即可。

最后对于每种k预处理一下,总复杂度\(n\sqrt n\)(考试的时候也没看懂\(\sum k \le 2e5\)的意义...这就表示k最多有\(\sqrt n\)种)

猜你喜欢

转载自www.cnblogs.com/lcyfrog/p/12815401.html
今日推荐