n=int(input())
xys=[list(map(int,input().split())) for _ in range(n)]
vec = []
pqs = []
for i in range(n):
    for j in range(i+1,n):
        pqs.append([(xys[i][0]-xys[j][0]),(xys[i][1]-xys[j][1])])
        pqs.append([-(xys[i][0]-xys[j][0]),-(xys[i][1]-xys[j][1])])
pqs.sort()
import collections

cnt = 1
cntMax = 0
for i in range(1,len(pqs)+1):
    if i == len(pqs):
        cntMax = max(cntMax,cnt)
    elif pqs[i] == pqs[i-1]:
        cnt += 1
    else:
        cntMax = max(cntMax,cnt)
        cnt = 1
print(n-cntMax) n=int(input()) n int(input()) int input() input 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 xys=[list(map(int,input().split())) for _ in range(n)] xys [list(map(int,input().split())) for _ in range(n)] vec = [] vec [] pqs = [] pqs [] for i in range(n):
    for j in range(i+1,n):
        pqs.append([(xys[i][0]-xys[j][0]),(xys[i][1]-xys[j][1])])
        pqs.append([-(xys[i][0]-xys[j][0]),-(xys[i][1]-xys[j][1])]) i range(n) range n for j in range(i+1,n):
        pqs.append([(xys[i][0]-xys[j][0]),(xys[i][1]-xys[j][1])])
        pqs.append([-(xys[i][0]-xys[j][0]),-(xys[i][1]-xys[j][1])]) j range(i+1,n) range i+1 i 1 n pqs.append([(xys[i][0]-xys[j][0]),(xys[i][1]-xys[j][1])]) pqs.append pqs append [(xys[i][0]-xys[j][0]),(xys[i][1]-xys[j][1])] xys[i][0]-xys[j][0] xys[i][0] [i] xys i 0 xys[j][0] [j] xys j 0 xys[i][1]-xys[j][1] xys[i][1] [i] xys i 1 xys[j][1] [j] xys j 1 pqs.append([-(xys[i][0]-xys[j][0]),-(xys[i][1]-xys[j][1])]) pqs.append pqs append [-(xys[i][0]-xys[j][0]),-(xys[i][1]-xys[j][1])] -(xys[i][0]-xys[j][0]) xys[i][0]-xys[j][0] xys[i][0] [i] xys i 0 xys[j][0] [j] xys j 0 -(xys[i][1]-xys[j][1]) xys[i][1]-xys[j][1] xys[i][1] [i] xys i 1 xys[j][1] [j] xys j 1 pqs.sort() pqs.sort pqs sort import collections collections cnt = 1 cnt 1 cntMax = 0 cntMax 0 for i in range(1,len(pqs)+1):
    if i == len(pqs):
        cntMax = max(cntMax,cnt)
    elif pqs[i] == pqs[i-1]:
        cnt += 1
    else:
        cntMax = max(cntMax,cnt)
        cnt = 1 i range(1,len(pqs)+1) range 1 len(pqs)+1 len(pqs) len pqs 1 if i == len(pqs):
        cntMax = max(cntMax,cnt)
    elif pqs[i] == pqs[i-1]:
        cnt += 1
    else:
        cntMax = max(cntMax,cnt)
        cnt = 1 i == len(pqs) i len(pqs) len pqs cntMax = max(cntMax,cnt) cntMax max(cntMax,cnt) max cntMax cnt elif pqs[i] == pqs[i-1]:
        cnt += 1
     pqs[i] == pqs[i-1] pqs[i] pqs i pqs[i-1] pqs i-1 i 1 cnt += 1 cnt 1 cntMax = max(cntMax,cnt) cntMax max(cntMax,cnt) max cntMax cnt cnt = 1 cnt 1 print(n-cntMax) print n-cntMax n cntMax xys=[list(map(int,input().split())) for _ in range(n)] [list(map(int,input().split())) for _ in range(n)] xys cnt = 1 1 cnt vec = [] [] vec cntMax = max(cntMax,cnt) max(cntMax,cnt) cntMax cnt += 1 1 cnt n=int(input()) int(input()) n pqs = [] [] pqs cntMax = 0 0 cntMax cnt = 1 1 cnt cntMax = max(cntMax,cnt) max(cntMax,cnt) cntMax
n=int(input())
xys=[list(map(int,input().split())) for _ in range(n)]
vec = []
pqs = []
for i in range(n):
    for j in range(i+1,n):
        pqs.append([(xys[i][0]-xys[j][0]),(xys[i][1]-xys[j][1])])
        pqs.append([-(xys[i][0]-xys[j][0]),-(xys[i][1]-xys[j][1])])
pqs.sort()
import collections

cnt = 1
cntMax = 0
for i in range(1,len(pqs)+1):
    if i == len(pqs):
        cntMax = max(cntMax,cnt)
    elif pqs[i] == pqs[i-1]:
        cnt += 1
    else:
        cntMax = max(cntMax,cnt)
        cnt = 1
print(n-cntMax)