N=int(input()) S=input() INF=-(10**9) DP=[[[[INF]*(N+1) for i in range(N+1)] for k in range(3)] for j in range(N+1)] DP[0][0][0][0]=0 for i in range(N): for l in range(3): for j in range(N): for k in range(N): if S[i]=='p': DP[i+1][l][j+1][k]=max(DP[i+1][l][j+1][k],DP[i][l][j][k]) elif S[i]=='o': if j: DP[i+1][l][j-1][k+1]=max(DP[i+1][l][j-1][k+1],DP[i][l][j][k]) else: if k: x=min(l+(j==(k-1)==0),2) DP[i+1][x][j][k-1]=max(DP[i+1][x][j][k-1],DP[i][l][j][k]+1) DP[i+1][l][j][k]=max(DP[i+1][l][j][k],DP[i][l][j][k]) print(max(-1,DP[N][2][0][0]-2))