package demo1;
import java.util.Scanner;
/**
* 字典序的最小的问题
* 给定长度为N的字符串s,要构造一个长度为N的字符串T,开始T是一个空的字符串,随后反复进行下列的操作
*
* 从S的头部删除一个字符,添加到T的尾部
* 从S的尾部删除一个字符,添加到T的尾部
* 不论顺序的执行上述的操作。
* 构造一个尽量小的字符串。
*
*
*
* @author Administrator
*
*/
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int N = input.nextInt();
StringBuffer sb = new StringBuffer();
String str = "";
String T= "";
for (int i = 0;i<N;i++){
str = (sb.append(input.next())).toString();
}
//把字符串转化成数组
char [] cs = str.toCharArray();
int a= 0;//表示的是下标
int b = N-1;//表示的是下标
while (a <= b) {//将从左起和从右起的字符串进行比较
boolean left = false;
for (int i=0;a+i<=b;i++) {
if (cs[a+i]<cs[b-i]) {
left = true;
break;
}else if (cs[a+i] >cs[b-i]){
left = false;
break;
}
}
if (left) {
T+=cs[a++];
}else {
T+=cs[b--];
}
}
System.out.println(T);
}
}