#include<stdio.h>
#define N 100000
int A[N];
void parti(int [],int);

int main()
{
  int n,i;

  scanf("%d",&n);
  for(i=0; i<n; i++) scanf("%d",&A[i]);
  i--;
  parti(A,i);

  return 0;
}

void parti(int A[], int r)
{
  int j,i,swp,x,t;

  x=A[r];
  i=-1;

  for(j=0; j<r; j++)
    {
      if(A[j]<=x)
        {
          i++;
          swp=A[i];
          A[i]=A[j];
          A[j]=swp;
        }
    }
  A[r]=A[i+1];
  A[i+1]=x;

  for(t=0; t<r+1; t++)
    {
        if(t==i+1)
        {
          printf("[%d]",A[t]);
          printf(" ");
        }
      else
        {
          printf("%d",A[t]);
          if(t!=r) printf(" ");
        }
    }
  printf("\n");
}
