题意很好懂,就是一个长度为n的序列,s[i] 只可能是r,g,b,要你要满足就 j - i != k - j,并且s[i],s[j],s[k]两两不相同,并且i < j < k,的个数有多少个。 思路: 暴力O(n^3)模拟一遍铁超时,j - i != k - j 一开始一直在观察这个式子看能不能优化一下,事实上可以不管这个式子就一个区间[i,k]={B,R},那么我们在[i + 1,k - 1]这个区间找有多少个G就行了,需要考虑一下中点是否需要减掉,然后把所有的情况枚举出来就行了。这里用前缀和维护sum [ i ] [ 1 - 3 ]:表示从1到i有多少个R,B,G。 感觉写的...