枚举 BZOJ题目传送门 洛谷题目传送门 一点都不会的暴枚题 把原地图用两条垂直于边界的直线分成三块,让三个正方形分别在这三块里取。那么可以分成六种情况: 对第一行的情况枚举其交点。对于第二行的情况枚举其中一条直线,另一条离枚举的这条距离为k。要预处理四个数组分别表示点 i,j i , j 左上/右上/左下/右下内的最大K*K正方形权值。 具体实现见代码(BZOJ不能用读优我也不知道为什么): #include<cctype>