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. giaan10anh2 (21/25)
  2. nguyenvuquang (8/14)
  3. sv_tranquocan (7/13)
Trong 7 ngày
  1. sv_tranquocan (64/139)
  2. quocchinh96bl (44/98)
  3. hanngocdat (43/84)
Trong 30 ngày
  1. huy_notcoding (192/304)
  2. ducchinh (184/249)
  3. hienpham (183/244)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 37913

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