#include<stdio.h>
int A[10005],i,j,N,x;
void sw(int *a,int *b)
{
	int c=*a;
	*a=*b;
	*b=c;
}
int main()
{
	scanf("%d",&N);
	for(i=0;i<N;i++)
		scanf("%d",A+i);
	x=A[N-1];
	for(i=j=0;j<N-1;j++)
	{
		if(A[j]<=x)
		{
			
			sw(&A[i++],&A[j]);
		}
	}
	sw(&A[i],&A[N-1]);
	x=i;
	for(i=0;i<N;i++)
		printf("%s%d%s%c",i==x?"[":"",A[i],i==x?"]":"",i==N-1?'\n':' ');
	return 0;
}