2537.Count-the-Number-of-Good-Subarrays pairs的计算取决于每种数字出现的频次。如果一个subarray里某个数值出现了m次,那么它就能贡献m/(m-1)/2个pairs. 很明显,窗口越大,就能够得到越多的pairs。 因此我们遍历每个元素i作为窗口的左端点,然后探索右端点的位置j使得窗口内恰好能有k对pairs,那么意味着右端点从j到n-1都是可行的,故有n-j个以i为左端点的合法滑窗。每一个回合,向右移动i一位,j必然是单调右移的。故双指针o(n)时间可解。