ZROI Day6比赛总结
比赛还没结束而且我没有参加比赛就来这里了。
T1
略
T2
设\(ans_d\)表示\(d|b_i\)的方案数(最后反演一下就可以)
设\(d\not|a_i\)的个数为\(l\)(可以\(O(n\log n)\)预处理),去除掉这些位置之后,剩下的至少有\(k+l-n\)个位置不同。
\[ans_d=\lfloor\frac{m}{d}\rfloor^l\sum_{i=k+l-n}^{n-l}\binom{n-l}{i}(\lfloor\frac{m}{d}\rfloor-1)^i
\]
【公式没写对,全家hzc】
T3
膜拜伟大的ntf,ntf万岁。
长度不相同的情况不说了。
设\(riga_i=\max\{j|j<i,a_j=a_i\}\),\(rigb_i\)同理。
当\(a_i>b_j\)时,\(f_{i,j}=\sum_{riga_i\leq k<i}\sum_{rigb_j\leq l<j}(f_{k,l}+g_{k,l})\)
当\(a_i=b_j\)时,\(f_{i,j}=\sum_{riga_i\leq k<i}\sum_{rigb_j\le l<j}f_{k,l}\) \(g_{i,j}=\sum_{riga_i\leq k<i}\sum_{rigb_j\leq l<j}g_{k,l}\)
用二维前缀和优化。
要知道本质不同的子序列跟本质不同的子串一样,都是可以在dp的时候,通过限定枚举变量的范围来保持与之前的本质不同。