#include<bits/stdc++.h>
using namespace std;
int n,d[10000];
int tt(int x,int c){
  int y=x+1,k=n;
  x--;
  while(1){
    bool f=0;
    int t=1,nx=x,ny=y;
    for(int i=x;i>=0;i--)
      if(c==d[i])t++,nx=i,f=1;
      else break;
    if(f)nx--,f=0;
    for(int i=y;i<n;i++)
      if(c==d[i])t++,ny=i,f=1;
      else break;
    if(f)ny++;
    if(t<4)break;
     if(nx)c=d[nx],x=nx-1,y=ny;
    else if(ny!=n)c=d[ny],x=nx,y=ny+1;
    k-=t;
  }
  return k;
}

int main(){
  while(cin>>n,n){
    for(int i=0;i<n;i++)cin>>d[i];
    int ans=n;
    for(int i=0;i<n;i++)
      for(int j=1;j<=3;j++)
	ans=min(ans,tt(i,j));
    cout<<ans<<endl;
  }
  return 0;
}