n = int(input())
nums = []
for i in range(n):
nums.append(input())
lis_0 = []
for i in nums:
num = []
for j in i:
num.extend(j)
lis_0.extend(num[0])
lis_0 = list(int(i) for i in lis_0)
t = list(zip(lis_0, nums))
def take_one(lis):
return lis[0]
t.sort(key=take_one, reverse=True)
if t[1][0] == 0:
print('0')
else:
lis_1 = list(i[1] for i in t)
s = ''.join(lis_1)
print(s)
# case 60%有没有大神能看下
import sys
if __name__ == '__main__':
while True:
line = sys.stdin.readline().strip()
if line == '':
break
lines = line.split()
n = int(lines[0])
nums = [] # 保存数字列
for i in range(n):
nums.append(int(sys.stdin.readline().strip().split()[0]))
nums = list(map(str, nums)) # 转为字符列表
flag = True # 冒泡排序结束的标志
while flag:
flag = False
for i in range(len(nums)-1):
if nums[i] + nums[i+1] < nums[i+1] + nums[i]:
temp = nums[i]
nums[i] = nums[i+1]
nums[i+1] = temp
flag = True
print(int("".join(nums))) while True: try: num1 = int(input()) num2 = [] for i in range(num1): num2.append(str(input())) num2.sort(reverse =True) for i in range(len(num2)-1): if(num2[i]+num2[i+1] < num2[i+1]+num2[i]): num2[i],num2[i+1] = num2[i+1],num2[i] result = ''.join(num2) while (len(result)>1 and result[0]=='0'): result= result[1:] print(result) except: break
num = int(input()) num_list = [] for i in range(num): tmp_num = input() for j in range(len(tmp_num)): num_list.append(int(tmp_num[j])) num_list.sort(reverse = True) result = 0 for i in range(len(num_list)): result = result * 10 + num_list[i] print(result)