#AT1261. 压平

压平

题目描述

给定 NN 个正整数 A1,A2,⋯ ,ANA_1, A_2, \cdots, A_N。

构造一个长度为 NN 的正整数序列 BB,满足

  • 对于任意正整数 i,ji,j,有 AiBi=AjBjA_iB_i = A_jB_j

求出序列 BB 各数的和的最小值,对 109+710^9+7 取模。

输入

第一行一个整数NN

第二行表示一个NN个整数的序列AA

输出

输出满足条件的 B1,…,BNB_1,…, B_N 的最小可能的值 B1+…+BNB_1+…+ B_N ,取模 109+710^9+7后的结果。

3
2 3 4
13

样例解释

取B1=6,B2=4,B3=3B_1=6,B_2= 4,B_3= 3,满足条件。

5
12 12 12 12 12
5

样例解释

我们可以让所有的 BiB_i 都为 1。

3
1000000 999999 999998
996989508

提示

  • 1 ≤ N ≤ 104 1\ \leq\ N\ \leq\ 10^4
  • 1 ≤ Ai ≤ 106 1\ \leq\ A_i\ \leq\ 10^6