Đếm LCM

Xem PDF

Nộp bài


Điểm: 20 (thành phần)
Thời gian: 1.5s
Bộ nhớ: 512M

Tác giả:
Dạng bài

Xét bài toán sau: Cho dãy số gồm N số nguyên dương, hãy cho biết bội số chung nhỏ nhất (LCM) của toàn dãy nếu ta biến đổi một phần tử của nó về giá trị 1.

Nhận thấy đề bài chưa đủ khó, Đức quyết định nâng cấp nó lên:

  • Các phần tử trong dãy thay vì được cho trực tiếp sẽ được biểu diễn dưới dạng tích của các thừa số nguyên tố. Cụ thể, phần tử thứ i sẽ gồm mi thừa số nguyên tố p1, p2,..., pmi, với số mũ tương ứng là e1,i, e2,i,..., emi,i. Nói cách khác, giá trị của nó sẽ bằng pe1,i1×pe2,i2×pe3,i3×...×pemi,imi.
  • Ta lần lượt thử biến đổi từng phần tử thứ 1, 2, 3,..., N về giá trị 1, và tính xem có tổng số bao nhiêu giá trị LCM khác nhau có thể thu được (mỗi lần thử chỉ biến đổi đúng một phần tử).
Input
  • Dòng đầu chứa số nguyên dương N (1N2×105).
  • Nhóm dòng thứ i trong N nhóm dòng tiếp theo bắt đầu bởi một dòng chứa số nguyên dương mi. Theo sau là mi dòng, dòng thứ j chứa thừa số nguyên tố pj và số mũ ej (1pj,ej109).
  • Dữ liệu đảm bảo tổng tất cả giá trị mi không vượt quá 2×105. Đồng thời, tất cả các giá trị p đều là số nguyên tố.
Output
  • In ra một số nguyên là số lượng giá trị LCM khác nhau ta có thể thu được sau N lần thử nghiệm.
Ví dụ
Sample input 01
Copy
4
1
3 2
2
2 2
5 1
1
5 1
2
2 1
3 1
Sample output 01
Copy
3
Giải thích
  • Các phần tử ban đầu của dãy là: 32=9, 22×51=20, 51=5, 21×31=6.
  • Nếu gán phần tử đầu tiên bằng 1, ta được dãy: [1,20,5,6]. Dãy này có LCM bằng 60.
  • Nếu gán phần tử thứ nhì bằng 1, ta được dãy: [9,1,5,6]. Dãy này có LCM bằng 90.
  • Nếu gán phần tử thứ ba bằng 1, ta được dãy: [9,20,1,6]. Dãy này có LCM bằng 180.
  • Nếu gán phần tử cuối cùng bằng 1, ta được dãy: [9,20,5,1]. Dãy này có LCM bằng 180.
  • Vậy có tổng cộng 03 giá trị LCM khác nhau là 60, 90, và 180.