#include<stdio.h>
int a[5500];
int min(int a,int b)
{
int c;
b<a?c=b:c=a;
return c;
}
void shuchu(int a[],int j,int n)
{
int i,t;
for(i=0; i<j; i++)
{
for(t=0; t<n; t++)
{
if(a[t]==1)
{
printf("%d ",t+1);
a[t]=0;
break;
}
}
for(t=0; t<n; t++)
{
if(a[t]==2)
{
printf("%d ",t+1);
a[t]=0;
break;
}
}
for(t=0; t<n; t++)
{
if(a[t]==3)
{
printf("%d\n",t+1);
a[t]=0;
break;
}
}
}
}
int main()
{
int i,j,t,n,a1,b1,c1;
scanf("%d",&n);
for(i=0; i<n; i++)
{
scanf("%d",&a[i]);
}
a1=0;b1=0;c1=0;
for(i=0; i<n; i++)
{
if(a[i]==1)a1++;
else if(a[i]==2)b1++;
else c1++;
}
j=min(a1,min(b1,c1));
if(j==0)printf("0\n");
else
printf("%d\n",j);
shuchu(a,j,n);
return 0;
}