#icpc2016autumna. [icpc2016autumn_a]Best Matched Pair

[icpc2016autumn_a]Best Matched Pair

问题陈述

你是一家位于东京的全球游戏公司的工程师。该公司每年夏天都会举办一次为全体员工举办的年度活动。今年的活动将在东京举行。你将作为组织人员参加活动。你被指派计划一个娱乐游戏,所有参与者将同时参与。

经过各种思考后,你设计了以下游戏规则。

  • 每个玩家在游戏开始前被赋予一个正整数。
  • 每个玩家试图与另一个玩家配对参与此游戏,形成的配对通过比较两个整数的乘积进行竞争。
  • 每个玩家在游戏结束前可以任意多次更换伙伴,但不能同时拥有两个或更多的伙伴。
  • 游戏结束时,乘积最大的配对获胜。

此外,为了使配对成立,给定的整数必须满足以下条件。

  • 将一对整数的乘积视为字符串后,所得到的数字序列必须从左到右递增并连续。例如,2223235678956789满足此条件,但21213343341351358901289012不满足。

根据上述规则,你注意到根据情况可能有多个乘积相同的配对获胜。然而,你可以找到给定整数集时两个整数的最大乘积是多少。

你的任务是,给定一组分配给玩家的不同整数,计算满足上述游戏规则的两个整数的最大可能乘积。

输入

输入包含一个测试用例,格式如下所示。

NN
a_1a_2dotsa_Na\_{1} \\ a\_{2} \\ \\dots \\ a\_{N}

第一行包含一个正整数 NN,表示游戏的玩家数量。NN 是一个介于 111,0001,000 之间的整数。第二行有 NN 个正整数,表示分配给玩家的数字。对于 i=1,2,dots,N1i =1, 2, \\dots, N-1a_ia\_ia_i+1a\_{i+1} 之间有一个空格。a_ia\_i 对于 i=1,2,dots,Ni =1,2, \\dots, N,在 1110,00010,000 之间,并且如果 ineji \\ne j,则 a_inea_ja\_i \\ne a\_j

输出

打印满足配对条件的两个整数的最大可能乘积。如果任意两名玩家无法配对,则打印 1-1

样例输入1

2
1 2```

### 样例输出1

```plain
2```

### 样例输入2

```plain
3
3 22 115```

### 样例输出2

```plain
345```

### 样例输入3

```plain
2
1 11```

### 样例输出3

```plain
-1```

### 样例输入4

```plain
2
5 27```

### 样例输出4

```plain
-1```

### 样例输入5

```plain
2
17 53```

### 样例输出5

```plain
-1```

### 样例输入6

```plain
10
53 43 36 96 99 2 27 86 93 23```

### 样例输出6

```plain
3456```