不会做的好题。
先将连续的相同字符缩起来。不妨设这样得到的 S S S中,出现次数按降序排列为 A A A, B B B和 C C C,显然这样答案的上界是 3 ⋅ C 3\cdot C 3⋅C的出现次数。设 C C C有 k k k个,那么中间有 k − 1 k-1 k−1个非空的仅含交替的 A B AB AB的段,两端还各有一个可以为空的仅含交替的 A B AB AB的段。
若 A A A和 B B B出现次数相同,我们发现我们可以每次删掉一对相邻的 A B AB AB或 B A BA BA(且删去后不会把中间的某个段删空),使得剩余的 A A A和 B B B出现次数仍相等,直到剩余的三种字符出现次数均相等。
若 A A A和 B B B出现次数不同,我们如果想达到上界,需要先删去多余的 A A A,使得剩余 A B AB AB的出现次数相同且不存在中间的段被删空。考虑称中间仅含单个 A A A的段为 X X X类,两侧仅含单个 A A A的段为 Y Y Y类,其他非空段为 Z Z Z类。容易发现我们可以将 Y Y Y类段删空, Z Z
Atcoder agc036E
最新推荐文章于 2020-09-17 22:04:49 发布