Codeforces Round 888 (Div. 3) C. Tiles Comeback

发布时间 2023-10-17 22:43:48作者: zsxuan

\(n\) 块瓷砖和一个正整数 \(k\) ,第 \(i\) 块瓷砖染色为 \(c_i\) 。一开始站在第 \(1\) 块瓷砖往,然后可以开始往右跳吗,到第 \(n\) 块瓷砖停止。你可以得到的路径长度 \(p\) 为你从 \(1\)\(n\) 踩过瓷砖的数量。

你需要确定是否存在一条长度为 \(p\) 的路径满足。

  • \(k \mid p\)
  • 路径可以分成若干长度为 \(k\) 的段
  • 每一段的瓷砖颜色一眼,不要求相邻段的颜色不同

显然我们只需要从 \(1\) 往右考虑 \(k - 1\) 个同色瓷砖,落点在 \(l\) 。从 \(n\) 往右考虑 \(k - 1\) 个同色瓷砖,落点在 \(r\) 。若 \(l < r\) ,则存在一条路径 \(p\)