#include<stdio.h>

int Array[100001];
int part(int,int);

int main(){
  int i;
  int j;
  int num;
  int data;

  scanf("%d",&num);

  for(i = 0;i < num;i++){
    scanf("%d",&Array[i]);
  }

  data = part(0,num - 1);

  for(i = 0;i < num;i++){
    if(i != 0){
      printf(" ");
    }
    if(i == data){
      printf("[");
    }
    printf("%d",Array[i]);
    if(i == data){
      printf("]");
    }
  }
  printf("\n");
  return 0;
}

int part(int d,int n){
  int change;
  int i;
  int j;
  int text;

  change = Array[n];
  i = d - 1;

  for(j = d;j < n;j++){
    if(change >= Array[j]){
      text = Array[j];
      Array[j] = Array[i + 1];
      Array[i + 1] = text;
      i++;
    }
  }

  text = Array[i + 1];
  Array[i + 1] = Array[n];
  Array[n] = text;

 return i + 1;
}

