#1109. 数对

数对

题目描述

给定 nn 个正整数 a1,a2,…,ana_1, a_2, \dots, a_n,请你求出有多少个数对 (i,j)(i, j) 满足以下条件:

  • 1≤i≤n1 \le i \le n 且 1≤j≤n1 \le j \le n;
  • i≠ji \ne j;
  • aia_i 是 aja_j 的倍数。

输入格式

第一行包含一个整数 nn —— 表示数字的个数。

第二行包含 nn 个正整数 a1,a2,…,ana_1, a_2, \dots, a_n —— 表示给定的序列元素。

输出格式

输出一行,一个整数,表示满足条件的数对 (i,j)(i, j) 的数量。

样例输入 1

6
16 11 6 1 9 11

样例输出 1

7

说明

样例解释

在样例中,给定的数组为 a=[16,11,6,1,9,11]a = [16, 11, 6, 1, 9, 11]。 满足 i≠ji \neq j 且 aia_i 是 aja_j 倍数的数对 (i,j)(i, j) 共有 77 个:

  • (1,4)(1, 4):a1=16a_1 = 16 是 a4=1a_4 = 1 的倍数;
  • (2,4)(2, 4):a2=11a_2 = 11 是 a4=1a_4 = 1 的倍数;
  • (3,4)(3, 4):a3=6a_3 = 6 是 a4=1a_4 = 1 的倍数;
  • (5,4)(5, 4):a5=9a_5 = 9 是 a4=1a_4 = 1 的倍数;
  • (6,4)(6, 4):a6=11a_6 = 11 是 a4=1a_4 = 1 的倍数;
  • (2,6)(2, 6):a2=11a_2 = 11 是 a6=11a_6 = 11 的倍数;
  • (6,2)(6, 2):a6=11a_6 = 11 是 a2=11a_2 = 11 的倍数。

因此总共有 77 对,输出 77。

数据范围

  • 对于 40%40 \% 的数据,保证 2≤n≤10002 \le n \le 1000。
  • 对于 70%70 \% 的数据,保证 1≤ai≤5×1031 \le a_i \le 5 \times 10^3。
  • 对于 100%100 \% 的数据,保证 2≤n≤2×1052 \le n \le 2 \times 10^5,1≤ai≤5×1051 \le a_i \le 5 \times 10^5。
  • 保证所有的输入数值均为整数。