第四题:滑动窗口,不过需要优化,C++的话用map,可以 log 时间取 max, min,那么判断就是 max - min == r - l ,这样就是顺子(当然在滑的过程中就得保证,任意数不能重复) nlog k 第五题:维护两个数组,存 k = 1/k = -1的情况(n1代表 k=1 的个数,n2代表 k=2 的个数,用Map去重)。假设先考虑 k = 1,板子已经被切成 n1 + 1 个了,然后枚举 k=-1 的直线,判断它与每一个 k=1 直线交点是否是否在 0<x<w,0<y<h 内,如果是的 cnt += 1,最后每一个 k = -1 的贡献是 cnt + 1,这样 O(m^2) 能做