#abc152e. [abc152_e]Flatten

[abc152_e]Flatten

問題文

NN 個の正整数 A1,...,ANA_1,...,A_N が与えられます。

次の条件を満たすような正整数 B1,...,BNB_1,...,B_N を考えます。

条件:1leqi<jleqN1 \\leq i < j \\leq N を満たすどのような i,ji,j についても AiBi=AjBjA_i B_i = A_j B_j が成り立つ。

このような B1,...,BNB_1,...,B_N における B1+...+BNB_1 + ... + B_N の最小値を求めてください。

ただし、答えは非常に大きくなる可能性があるため、(109+7)(10^9 +7) で割ったあまりを出力してください。

制約

  • 1leqNleq1041 \\leq N \\leq 10^4
  • 1leqAileq1061 \\leq A_i \\leq 10^6
  • 入力中のすべての値は整数である。

入力

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

NN A1A_1 ...... ANA_N

出力

条件を満たすような B1,...,BNB_1,...,B_N における B1+...+BNB_1 + ... + B_N の最小値を (109+7)(10^9 +7) で割ったあまりを出力せよ。


入力例 1

3
2 3 4

出力例 1

13

B1=6B_1=6, B2=4B_2=4, B3=3B_3=3 とすると条件を満たします。


入力例 2

5
12 12 12 12 12

出力例 2

5

全ての BiB_i11 とすればよいです。


入力例 3

3
1000000 999999 999998

出力例 3

996989508

和を (109+7)(10^9+7) で割った余りを出力してください。