C - GCD on Blackboard Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 300

問題文

N 個の整数 A_1, A_2, ..., A_N が黒板に書かれています。

あなたはこの中から整数を 1 つ選んで、1 以上 10^9 以下の好きな整数に書き換えます。

元の整数と同じ整数に書き換えても構いません。

書き換えた後の N 個の整数の最大公約数の最大値を求めてください。

制約

  • 入力は全て整数である。
  • 2 \leq N \leq 10^5
  • 1 \leq A_i \leq 10^9

入力

入力は以下の形式で標準入力から与えられる。

N
A_1 A_2 ... A_N

出力

書き換えた後の N 個の整数の最大公約数の最大値を出力せよ。


入力例 1

3
7 6 8

出力例 1

2

74 に書き換えると 3 つの整数の最大公約数は 2 となり、これが最大です。


入力例 2

3
12 15 18

出力例 2

6

入力例 3

2
1000000000 1000000000

出力例 3

1000000000

元の整数と同じ整数に書き換えることも可能です。

Score : 300 points

Problem Statement

There are N integers, A_1, A_2, ..., A_N, written on the blackboard.

You will choose one of them and replace it with an integer of your choice between 1 and 10^9 (inclusive), possibly the same as the integer originally written.

Find the maximum possible greatest common divisor of the N integers on the blackboard after your move.

Constraints

  • All values in input are integers.
  • 2 \leq N \leq 10^5
  • 1 \leq A_i \leq 10^9

Output

Input is given from Standard Input in the following format:

N
A_1 A_2 ... A_N

Output

Print the maximum possible greatest common divisor of the N integers on the blackboard after your move.


Sample Input 1

3
7 6 8

Sample Output 1

2

If we replace 7 with 4, the greatest common divisor of the three integers on the blackboard will be 2, which is the maximum possible value.


Sample Input 2

3
12 15 18

Sample Output 2

6

Sample Input 3

2
1000000000 1000000000

Sample Output 3

1000000000

We can replace an integer with itself.