canuc80k7000·1/50

Những Cặp Không Chung Ước

Nộp bài trên LQDOJ

Bài 70 · Möbius Function

Cho một dãy số nguyên dương, đếm số cặp chỉ số khác nhau không xét thứ tự mà hai giá trị tương ứng nguyên tố cùng nhau.

Hai giá trị được gọi là nguyên tố cùng nhau khi ước chung lớn nhất của chúng bằng . Mỗi cặp chỉ số chỉ được tính một lần.

Input

  • Dòng đầu chứa số phần tử .
  • Dòng tiếp theo chứa số nguyên dương .

Output

  • In một số nguyên là số cặp chỉ số thỏa .

Constraints

Scoring

  • Subtask ( số điểm): và .
  • Subtask ( số điểm): Không có giới hạn bổ sung.

Example

Test 1

Input

6
2 3 4 9 10 25

Output

10

Giải thích: Trong cặp chỉ số, có cặp có ước chung lớn nhất bằng ; năm cặp còn lại cùng chia hết cho hoặc . Vì vậy kết quả cần in là .

Lời giải tóm tắt
  • Ý tưởng: Đếm số phần tử chia hết cho từng d rồi cộng μ(d)·C(c_d,2).
  • Chứng minh đúng: Một cặp có gcd bằng g xuất hiện trong C(c_d,2) đúng với mọi d chia g. Tổng trọng số của cặp là tổng μ(d) trên các ước d của g, bằng 1 khi g=1 và bằng 0 trong mọi trường hợp còn lại.
  • Độ phức tạp: O(A log A) thời gian và O(A) bộ nhớ, với A=max(a_i).