from copy import deepcopy

N=int(input())
S=[list(input().strip()) for i in range(N)]

ANS=100
for i in range(1<<15):
    A=deepcopy(S)

    c=0

    for j in range(N):
        for k in range(N):
            if A[j][k]=="-":
                if i & (1<<c) !=0:
                    A[j][k]="o"
                    A[k][j]="x"
                else:
                    A[j][k]="x"
                    A[k][j]="o"
                c+=1

    B=[]
    for j in range(N):
        win=0
        for k in range(N):
            if A[j][k]=="o":
                win+=1
        B.append(win)

    C=sorted(set(B),reverse=True)

    for j in range(len(C)):
        if C[j]==B[0]:
            ANS=min(ANS,j+1)

print(ANS)