G525122. [GESP202512 五级 C++] 27. 相等序列

提交0 通过0
通过率0%
时间限制1000ms
内存限制512MiB

题目描述

题目描述

小 A 有一个包含 NN 个正整数的序列 A={A1,A2,...,AN}A=\{A_1,A_2,...,A_N\}。小 A 每次可以花费 11 个金币执行以下任意一种操作:

  • 选择序列中一个正整数 AiA_i,将 AiA_i 变为 Ai×PA_i \times P,PP 为任意质数;
  • 选择序列中一个正整数 AiA_i,将 AiA_i 变为 Ai/PA_i / P,PP 为任意质数,要求 AiA_i 是 PP 的倍数。

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

输入格式

第一行一个正整数 NN。

第二行 NN 个正整数 A1,...,ANA_1,...,A_N。

输出格式

一行,最少需要花费的金币数量。

5
10 6 35 105 42
8

对于 60%60\% 的测试点,保证 1≤N,Ai≤1001\le N,A_i\le 100。

对于所有测试点,保证 1≤N,Ai≤1051\le N,A_i\le 10^5。

数据范围

  • 对于 60%60\% 的测试点,保证 1≤N,Ai≤1001\le N,A_i\le 100。
  • 对于所有测试点,保证 1≤N,Ai≤1051\le N,A_i\le 10^5。