Link
好吧,又是神题。。
Solution
第一步想到了就做出了大半了 设前个字符中,有个'B',个'C',个'S' 那么只要有位置,,,,就可以用更新答案了 把变量分离出来,得到三元组 只要保证两个位置的三元组都不相等,就可以了。 第一维排序,第二维树状数组,树状数组维护第三维和位置。 具体说,第一维相同的一起转移,在第二维的树状数组里面维护位置的最大次大和最小次小值,且最值和次值的第三维必须不同,这样就可以查询了。
Tips
对于可以用前缀和维护的量,用上前缀和可能会有奇效
Code
1 |
|