SIÊU CHÍNH PHƯƠNG

Cho một dãy số A gồm ~ N ~ số nguyên dương ~ A_1, A_2, …, A_N ~. Một số nguyên dương ~ K ~ được gọi là số siêu chính phương của dãy ~ A ~ nếu thoả mãn đồng thời hai điều kiện:

  • Số ~ K ~ là một số chính phương.

  • Số ~ K ~ chia hết cho tất cả các phần tử ~ A_1, A_2, …, A_N. ~

Yêu cầu: Hãy lập trình tìm số siêu chính phương ~ K ~ nhỏ nhất của dãy A. Do số ~ K ~ có thể rất lớn nên bạn chỉ cần đưa ra kết quả là số dư của phép chia ~ K ~ cho ~ 1000000007. ~

Dữ liệu vào:

  • Dòng đầu tiên ghi số nguyên dương ~ N ~ (~ N≤10^5 ~).

  • Dòng thứ hai ghi ~ N ~ số nguyên dương~ A_1, A_2, …,A_N ~ ~ (0<A_i≤10^6, 1≤i≤N) ~.

Kết quả:

  • Ghi một số nguyên cho biết kết quả bài toán.

Ví dụ:

Input

5
3  2  4  3  1 
Output
36 

Ràng buộc:

  • 30% test với ~ 1<N≤20;1≤Ai≤20 ~.
  • 40% test với ~ 1≤N≤10^5;~ ~A_i~ là số nguyên tố nhỏ hơn ~10^6( 1≤i≤N) ~.
  • 30% số test còn lại không có ràng buộc gì thêm.

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. quocchinh96bl (9/16)
  2. tgtam2022 (2/5)
  3. hoangngan0408 (1/5)
Trong 7 ngày
  1. quocchinh96bl (12/21)
  2. caubeioi (12/25)
  3. tribinh (11/13)
Trong 30 ngày
  1. caubeioi (174/287)
  2. nhatanh (94/132)
  3. hanngocdat (91/213)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38250

Lưu Hải Phong - 2020
[email protected]