如n=2,m=2,组成井字形,最多有1个,n=2,m=3,最多3个(2个小的,1个大的)
“拿不准就穷举”
两点确定一个矩形,从这个要点入手。考虑把网格的每一个顶点作为左上角点。则该点右侧或下侧有多少个点(可以作为右下角点),则以该点为左上角点的矩形就有多少个。对于n=6,m=5的一个例子如下:
20 16 12 8 4 0
15 12 9 6 3 0
10 8 6 4 2 0
5 4 3 2 1 0
0 0 0 0 0 0
self-explained. 甚至连代码都不用了。有O(n+m)的复杂度,凑合吧。O(1)的算法必有,懒得想了
每(2条横线&&2条竖线)都可以组成1个矩形。然后问题就变成了Cn2*Cm2