#163. 相等序列

相等序列

相等序列

题目描述

小 A 有一个包含 n 个正整数的序列 a。小 A 每次可以花费 1 个金币执行以下任意一种操作:

  • 选择序列中一个正整数 a[i],将 a[i] 变为 a[i] * p,其中 p 为任意质数;
  • 选择序列中一个正整数 a[i],将 a[i] 变为 a[i] / p,其中 p 为任意质数,要求 a[i] 能被 p 整除。

小 A 想请你帮助他计算出令序列中所有整数都相同,最少需要花费多少金币。

输入格式

第一行一个正整数 n,代表序列长度。 第二行包含 n 个正整数 a[1], a[2], ..., a[n],代表序列 a

输出格式

输出一行,代表最少需要花费的金币数量。

样例

输入样例

5 10 6 35 105 42

输出样例

8

样例解释

对每个质因数取其中位数即可使所有数相同,总代价为 8。

数据范围

对于所有测试点,保证 1 <= n <= 10^51 <= a[i] <= 10^5