#CJM08A. [J模8] 团结(unite)

[J模8] 团结(unite)

题目描述

小 C 有一个长度为 nn 的序列 AA。

小 C 认为一个序列 AA 是团结的当且仅当 gcd⁡(A1,A2,...,An)=1\gcd(A_1,A_2,...,A_n)=1。

小 C 现在可以做以下操作任意次:

  • 选择一个位置 ii,将 AiA_i 变为 gcd⁡(Ai,i)\gcd(A_i,i),花费的代价为 n−i+1n-i+1。

小 C 想求出使序列 AA 团结的最小代价和。

输入格式

输入的第一行包含一个整数 nn。

接下来一行包含 nn 个整数,第 ii 个整数表示 AiA_i。

输出格式

输出共一行,包含一个整数,表示最小代价和。

2
2 4
2
3
3 6 9
2

数据范围

样例 1 解释

花费代价 22 选择位置 11,A1A_1 变为 11。

  • 对于 30%30\% 的数据,保证 n≤20n\le 20。
  • 对于 60%60\% 的数据,保证 n≤50n\le 50。
  • 对于 100%100\% 的数据,1≤n≤1051\le n\le 10^5,1≤Ai≤1091\le A_i\le 10^9。
难度 未评定
通过率 —
尝试 0
通过 0
ID
3829
类型
传统题
Time Limit
1000ms
Memory Limit
256MiB
上传者