#1109. 数对

数对

题目描述

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

  • 1in1 \le i \le n1jn1 \le j \le n
  • iji \ne j
  • aia_iaja_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]。 满足 iji \neq jaia_iaja_j 倍数的数对 (i,j)(i, j) 共有 77 个:

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

因此总共有 77 对,输出 77

数据范围

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