#include<stdio.h>
#include<iostream>
#include<memory.h>
#include<math.h>
using namespace std;int flag1[];
int flag2[];
int flag3[];
int main()
{
memset(flag1,,sizeof(flag1));
memset(flag2,,sizeof(flag2));
memset(flag3,,sizeof(flag3));
int n;
cin>>n;
int kiss,kiss1=,kiss2=,kiss3=;
int minn=;
for(int i=;i<n;i++)
{
cin>>kiss;
if(kiss==)
flag1[++kiss1]=i;
else if(kiss==)
flag2[++kiss2]=i;
else
flag3[++kiss3]=i;
}
minn=min(kiss1,min(kiss2,kiss3));
cout<<minn<<endl;
for(int i=;i<minn;i++)
{
cout<<flag1[i+]+<<" "<<flag2[i+]+<<" "<<flag3[i+]+<<endl;
}
return ;
}