信友队 CSP-S2023 A

发布时间 2023-10-20 09:47:24作者: ydtz

考虑矩形数量的规模大概是 \(O(n^4)\) 量级的,故很难通过枚举的方式直接做。

弱化问题,如果只统计正着的矩形,个数是 \(O(n^3)\) 量级的。而斜着的矩形都是可以被一个恰当的正矩形包含的,此时两者对应顶点距离相同,存在性可以由顶点位置取与判断。

即,我们可以将一个边长为 \(x\) 正矩形的贡献看作是 \(x-1\)\(01\) 取与后相加得到的,而它们分布在四条直线上。于是我们可以预处理出每行每列的 bitset,在上面做位运算处理即可。

时间复杂度 \(O(\frac{n^4}{w})\)

感觉不太能降复杂度的与 01 沾边的问题,考虑下 bitset。