4358: T1 团结(unite)
内存限制:512 MB
时间限制:2.000 S
评测方式:文本比较
命题人:
提交:5
解决:1
题目描述
## T1 团结(unite)
### 题目描述
小 C 有一个长度为 $n$ 的序列 $A$。
小 C 认为一个序列 $A$ 是团结的当且仅当 $\gcd(A_1,A_2,...,A_n)=1$。
小 C 现在可以做以下操作任意次:
- 选择一个位置 $i$,将 $A_i$ 变为 $\gcd(A_i,i)$,花费的代价为 $n-i+1$。
小 C 想求出使序列 $A$ 团结的最小代价和。
输入
### 输入格式
输入的第一行包含一个整数 $n$。
接下来一行包含 $n$ 个整数,第 $i$ 个整数表示 $A_i$。
输出
### 输出格式
输出共一行,包含一个整数,表示最小代价和。
样例输入 复制
2
2 4
样例输出 复制
2
提示
### 样例 1 输入
```
2
2 4
```
### 样例 1 输出
```
2
```
### 样例 1 解释
花费代价 $2$ 选择位置 $1$,$A_1$ 变为 $1$。
### 样例 2 输入
```
3
3 6 9
```
### 样例 2 输出
```
2
```
### 其余样例见下发文件。
### 数据规模与约定
- 对于 $30\%$ 的数据,保证 $n\le 20$。
- 对于 $60\%$ 的数据,保证 $n\le 50$。
- 对于 $100\%$ 的数据,$1\le n\le 10^5$,$1\le A_i\le 10^9$。