#include #define MOD 1000000007 #define INF (1<<30) #define INFL (1<<62) #define pe(str) return cout<<(str)<=0;i--) #define rep(i,a,b) for(int i=(a);i<(b);i++) #define rrep(i,a,b) for(int i=(b);i>=(a);i--) #define bw(a,b,c) (((a)<=(b))&&((b)<=(c))) #define hello cout<<"hello"<>n #define EPS 1e-6 #define EPSIN(a,b) ((b)-EPS<=(a)&&(a)<=(b)+EPS) using namespace std; typedef long long ll; typedef unsigned long long ull; typedef long double ld; typedef pair pii; typedef complex point; template void dump(InputIterator first,InputIterator last,char delim=' '){ for(InputIterator it=first;it!=last;it++){ if(it!=first)cout< void swp(T &a,T &b){ T t=a; a=b; b=t; } int n; int a[12]; bool u[12]; bool solve(int i,int j,int k,int d){ bool f=IF(d&1,true,false); if(u[i]||u[j]||u[k])return false; if(!(a[i]!=a[j]&&a[j]!=a[k]&&a[k]!=a[i]&&(a[i]a[j]&&a[k]>a[j])))return false; u[i]=u[j]=u[k]=1; re(x,n){ rep(y,x+1,n){ rep(z,y+1,n){ if(solve(x,y,z,d+1)){ u[i]=u[j]=u[k]=0; return false; // 必勝パターンがあれば負け } } } } u[i]=u[j]=u[k]=0; return true; // 負ける未来が見えない } int main(void){ cin>>n; re(i,n)cin>>a[i]; re(i,n)u[i]=0; bool f=true; set > s; re(i,n){ rep(j,i+1,n){ rep(k,j+1,n){ if(solve(i,j,k,1))return cout<(t)<<" "<(t)<<" "<(t)<