#include<stdio.h>
#define N 100000
int kansu(int p,int q);
int a[N],s;

int main(){
  int i,b;

  scanf("%d",&s);
  for(i=0;i<s;i++)
    scanf("%d",&a[i]);

  b=kansu(0,s-1);

  for(i=0;i<s;i++){
    if(i)printf(" ");
    if(i==b)printf("[");
    printf("%d",a[i]);
    if(i==b)printf("]");
  }
  printf("\n");
  return 0;
}

int kansu(int p,int q){
  int i,j,c,d;
  c=a[q];
  i=p-1;
  for(j=p;j<q;j++){
    if(a[j]<=c){
      i++;
      d=a[i];a[i]=a[j];a[j]=d;
    }
  }d=a[i+1];a[i+1]=a[q];a[q]=d;
  return i+1;
}

