n=int(input())

if n == 1:
    print(1)
    exit()

ball_xy = []
for _ in range(n):
    x, y = (int(x) for x in input().split())
    ball_xy.append([x, y])

distance = {}

for i in range(n):
    for j in range(n):
        if i == j:
            continue
        if (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) in distance:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] += 1
        else:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] = 1

cost_0 = max(distance.values())

print(n-cost_0) n=int(input()) n int(input()) int input() input if n == 1:
    print(1)
    exit() n == 1 n 1 print(1) print 1 exit() exit ball_xy = [] ball_xy [] for _ in range(n):
    x, y = (int(x) for x in input().split())
    ball_xy.append([x, y]) _ range(n) range n int(x) for x in input().split() for x in input().split() x input().split() ().split () input split for x in input().split() int(x) int x x, y = (int(x) for x in input().split()) x (int(x) for x in input().split()) y ball_xy.append([x, y]) ball_xy.append ball_xy append [x, y] x y distance = {} distance {} for i in range(n):
    for j in range(n):
        if i == j:
            continue
        if (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) in distance:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] += 1
        else:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] = 1 i range(n) range n for j in range(n):
        if i == j:
            continue
        if (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) in distance:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] += 1
        else:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] = 1 j range(n) range n if i == j:
            continue
         i == j i j continue if (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) in distance:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] += 1
        else:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] = 1 (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) in distance (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) ball_xy[i][0]-ball_xy[j][0] ball_xy[i][0] [i] ball_xy i 0 ball_xy[j][0] [j] ball_xy j 0 ball_xy[i][1]-ball_xy[j][1] ball_xy[i][1] [i] ball_xy i 1 ball_xy[j][1] [j] ball_xy j 1 distance distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] += 1 distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] distance (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) ball_xy[i][0]-ball_xy[j][0] ball_xy[i][0] [i] ball_xy i 0 ball_xy[j][0] [j] ball_xy j 0 ball_xy[i][1]-ball_xy[j][1] ball_xy[i][1] [i] ball_xy i 1 ball_xy[j][1] [j] ball_xy j 1 1 distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] = 1 distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] distance (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) ball_xy[i][0]-ball_xy[j][0] ball_xy[i][0] [i] ball_xy i 0 ball_xy[j][0] [j] ball_xy j 0 ball_xy[i][1]-ball_xy[j][1] ball_xy[i][1] [i] ball_xy i 1 ball_xy[j][1] [j] ball_xy j 1 1 cost_0 = max(distance.values()) cost_0 max(distance.values()) max distance.values() distance.values distance values print(n-cost_0) print n-cost_0 n cost_0 x, y = (int(x) for x in input().split()) (int(x) for x in input().split()) x distance = {} {} distance y = (int(x) for x in input().split()) (int(x) for x in input().split()) y ball_xy = [] [] ball_xy cost_0 = max(distance.values()) max(distance.values()) cost_0 n=int(input()) int(input()) n
n=int(input())

if n == 1:
    print(1)
    exit()

ball_xy = []
for _ in range(n):
    x, y = (int(x) for x in input().split())
    ball_xy.append([x, y])

distance = {}

for i in range(n):
    for j in range(n):
        if i == j:
            continue
        if (ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1]) in distance:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] += 1
        else:
            distance[(ball_xy[i][0]-ball_xy[j][0], ball_xy[i][1]-ball_xy[j][1])] = 1

cost_0 = max(distance.values())

print(n-cost_0)