c1 oa

def soln(points): # assuming no dup points dd = collections.defaultdict(set) for x, y in points: dd[x].add(y) ans = 0 for x, y in points: for _x in [x+1, x+2]: for _y in [y-2, y-1, y, y+1, y+2]: if _y in dd[_x]: ans += 1 for _x in [x]: # it's reduced to a 1D problem for _y in [y+1, y+2]: if _y in dd[_x]: ans += 1 return ans