Skip to content

Latest commit

 

History

History
 
 

2013.Detect-Squares

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

2013.Detect-Squares

对于给定的点(x,y),我们只要给出对角线位置,就能唯一地确定一个正方形。

具体地说,我们考察i作为(x,y)对角位置的横坐标,那么正方形的边长就确定了d=abs(x-i)。于是对角位置的纵坐标就只有两种可能j=y+d或者j=y-d。不管哪一种,我们需要保证其余三个角的点都存在,即(i,j), (x,j), (i,y)。考虑到重合的点,那么能组成正方形的总数就是counts[i][j]*counts[x][j]*counts[i][y].