Dãy ước số chung lớn nhất


Submit solution

Points: 50
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type

An mới bắt đầu học toán và cậu ta vẫn chưa biết gì về ước số chung lớn nhất. Cho nên cậu ta cần sự giúp đỡ của bạn để làm một vài phép toán. An có một dãy A gồm N số nguyên, được đánh số từ 1 đến N và An muốn tạo một mảng B gồm N+1 phần tử được đánh số từ 1 đến N+1 và các phần tử của mảng B có tính chất sau: UCLN(B[i], B[i + 1]) = A[i], ∀ 1 ≤ i ≤ N. Nếu như có nhiều kết quả thì bạn chỉ cần cho An biết mảng B có tổng các phần tử là nhỏ nhất (vì cậu ta chỉ mới bắt đầu học toán nên rất ngại các con số lớn).

Dữ liệu vào

  • Dòng đầu tiên chứa một số nguyên T - số lượng test case (1 ≤ T ≤ 10). Tiếp theo là các test case:
  • Dòng đầu tiên của mỗi test case chứa một số nguyên dương N - số lượng phần tử của mảng A (\(2 ≤ N ≤ 10^5\)).
  • Dòng thứ hai chứa N số nguyên A1 A2 ... AN (\(1 ≤ Ai ≤ 10^9\))

Kết quả

  • Với mỗi test case xuất trên một dòng chứa N+1 phần tử của mảng B (0 < Bi)

Ví dụ 1:

INPUT

    2
    3
    1 2 4
    3
    6 10 2

OUTPUT

   1 2 4 4
   6 30 10 2

Comments

There are no comments at the moment.