【题解】P9512 [JOI Open 2023] 古代机器 2 / Ancient Machine 2
https://www.luogu.com.cn/problem/P9512
- 前 100 个位置:假设已经知道了 \(s_{1\sim p}\),现在询问 \(s_{p+1}\)。构造前 \(p\) 步都是走向 \(i+1\),而第 \(p+1\) 步根据 0/1 结果选择一个自环。
- 后 100 个位置:假设已经知道了一个后缀,那么往前面加一个 0,构造 kmp 自动机,最后若匹配则知道新加的位置是 0 还是 1。
- 构造两个环,求出 \(\oplus s_{a+kl}\)。其中 \(a\le l,l\le 51\),方程组进行消元可以得到 800 多个方程。
三部分拼一起就可以通过。
浙公网安备 33010602011771号