mask[i] 表示前缀 s[1..i] 的 26 位奇偶掩码(第 k 位为该字母出现次数的奇偶)。s[l..i] 的掩码为 mask[l-1] ^ mask[i]。popcount(mask[l-1] ^ mask[i]) ∈ {0,1}(全 0 或恰好一个 1)。小明是一个魔法项链回收商,他的工作是将这些魔法项链进行无害化处理,魔法项链由若干颗魔法石组成,可以视作一个字符串,不同种类的魔法石可以用小写字母 a ~ z 来进行表示。小明可以将魔法项链切割为若于段(也可以不切割),每一段中相同种类的魔法石可以进行能量抵消,如果最终宝石全部抵消或者只剩一颗,那么就算完成了无害化处理。
例如:
项链段 zz 可以完成无害化。
项链段 aba 可以完成无害化,aa 可以抵消,最后只一颗 b ;