from itertools import product from copy import deepcopy N=int(input()) S=[] R=[] for i in range(N): S.append(list(input())) for j in range(i+1,N): if S[-1][j]=="-": R.append((i,j)) rank=N for t in product([0,1],repeat=len(R)): for k,(i,j) in enumerate(R): if t[k]==1: S[i][j],S[j][i]="o","x" else: S[i][j],S[j][i]="x","o" X=set() for i in range(N): X.add(S[i].count("o")) X=sorted(X,reverse=True) rank=min(rank,X.index(S[0].count("o"))+1) for i,j in R: S[i][j]=S[j][i]="-" print(rank)