P12221 [蓝桥杯 2023 国 Java B] 序列
题目描述
给定一个长度为 $n$ 的正整数序列 $a_1, a_2, \ldots, a_n$,同时有一个首项为 $d$,公差为 $d$,项数为 $n$ 的等差数列 $\{b_1 = d, b_2 = 2d, \ldots, b_n = nd\}$。
定义 $S_d = \displaystyle \sum_{a_i | b_i} 1$,即 $S_d$ 表示当公差为 $d$ 时有多少对 $(a_i, b_i)$ 满足 $b_i$ 被 $a_i$ 整除,请求出 $\displaystyle \sum_{i=1}^{n} S_i$。
输入格式
输入共 $2$ 行。
第一行为一个正整数 $n$。
第二行为 $n$ 个由空格隔开的正整数 $a_1, a_2, \ldots, a_n$。
输出格式
输出共 $1$ 行,一个整数。
说明/提示
### 样例说明
- 当公差等于 $1$:$b = \{1, 2, 3, 4\}$, 有 3 对 $(a_i, b_i)$ 满足条件,$S_1 = 3$。
- 当公差等于 $2$:$b = \{2, 4, 6, 8\}$, 有 4 对 $(a_i, b_i)$ 满足条件,$S_2 = 4$。
- 当公差等于 $3$:$b = \{3, 6, 9, 12\}$, 有 3 对 $(a_i, b_i)$ 满足条件,$S_3 = 3$。
- 当公差等于 $4$:$b = \{4, 8, 12, 16\}$, 有 4 对 $(a_i, b_i)$ 满足条件,$S_4 = 4$。
所以答案为 $3 + 4 + 3 + 4 = 14$。
### 评测用例规模与约定
- 对于 $20\%$ 的数据, 保证 $n \leq 10^3$。
- 对于 $100\%$ 的数据, 保证 $1\leq n \leq 10^5$,$1\leq a_i \leq n$。