2025.8.28模拟赛

T1

给定模式串 \(x,y\),给定串 \(s\),求是否可以把 \(s\) 划分成两个子序列,使得其中一个是 \(x\) 重复若干次(可能为空),另外一个是 \(y\) 重复若干次(可能为空)。多组数据。
\(1\le |s|\le 5\times 10^5,1\le|x|,|y|\le 50\)

\(f_{i,j,k}\) 表示 \(s\) 匹到第 \(i\) 为,目前 \(|x|\) 匹到第 \(j\) 位(前面循环使用的不计),\(|y|\) 匹到第 \(j\) 位是否可行。若 \(s_{i+1}=x_{j+1}\) 则可以转向 \(f_{i+1,j+1,k}\)\(y\) 同理。

然后复杂度 \(O(nm^2)\)。有 60pts。

然后将第三维圧成一个 long long 二进制数,然后相当于循环移位并将 \(s\)

posted @ 2025-08-28 11:37  zzy0618  阅读(12)  评论(0)    收藏  举报