from collections import defaultdict
N = int(input())
d = defaultdict(int)
XY = sorted([list(map(int,input().split())) for _ in range(N)])
for i in range(N):
  for j in range(i):
    d[(XY[i][0] - XY[j][0], XY[i][1] - XY[j][1])] += 1
print(N - max(d.values(), default=0)) from collections import defaultdict N = int(input()) N int(input()) int input() input d = defaultdict(int) d defaultdict(int) defaultdict int list(map(int,input().split())) for _ in range(N) for _ in range(N) _ range(N) range N for _ in range(N) list(map(int,input().split())) list map(int,input().split()) map int input().split() ().split () input split XY = sorted([list(map(int,input().split())) for _ in range(N)]) XY sorted([list(map(int,input().split())) for _ in range(N)]) sorted [list(map(int,input().split())) for _ in range(N)] for i in range(N):
  for j in range(i):
    d[(XY[i][0] - XY[j][0], XY[i][1] - XY[j][1])] += 1 i range(N) range N for j in range(i):
    d[(XY[i][0] - XY[j][0], XY[i][1] - XY[j][1])] += 1 j range(i) range i d[(XY[i][0] - XY[j][0], XY[i][1] - XY[j][1])] += 1 d[(XY[i][0] - XY[j][0], XY[i][1] - XY[j][1])] d (XY[i][0] - XY[j][0], XY[i][1] - XY[j][1]) XY[i][0] - XY[j][0] XY[i][0] [i] XY i 0 XY[j][0] [j] XY j 0 XY[i][1] - XY[j][1] XY[i][1] [i] XY i 1 XY[j][1] [j] XY j 1 1 print(N - max(d.values(), default=0)) print N - max(d.values(), default=0) N max(d.values(), default=0) max d.values() d.values d values default=0 default 0 N = int(input()) int(input()) N d = defaultdict(int) defaultdict(int) d XY = sorted([list(map(int,input().split())) for _ in range(N)]) sorted([list(map(int,input().split())) for _ in range(N)]) XY
from collections import defaultdict
N = int(input())
d = defaultdict(int)
XY = sorted([list(map(int,input().split())) for _ in range(N)])
for i in range(N):
  for j in range(i):
    d[(XY[i][0] - XY[j][0], XY[i][1] - XY[j][1])] += 1
print(N - max(d.values(), default=0))